资源预览内容
第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
亲,该文档总共4页全部预览完了,如果喜欢就下载吧!
资源描述
简单Java程序的编写:建立一个源文件,MyJava.javapublic class MyJava public static void main(String args)System.out.println(“早上好,Good morning);1.平台无关性:c#开发和java编译出来的程序需要虚拟机运行的,其二进制代码是中间代码。所以,只要是装有虚拟机Java WM, .net framework的地方就可以执行C#编译出来的程序。跟平台没有关系,所以叫做平台无关。 Java语言与 其他语言相比,最大优势就是能够在所有的计算机上运行,能做到这一点,是因为JAVA可以在计算机的操作系统之上提供了一个JAVA运行环境2.JVM:它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、存放器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。 3.JVM:是JAVA运行环境的重要组成局部,正是JVM中的解释器负责将字节码翻译本钱地的机器码。 4.虚拟机:Java虚拟机Java Virtual Machine 简称JVM是运行所有Java程序的抽象计算机,是Java语言的运行环境,它是Java 最具吸引力的特性之一。 Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用模式Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。类与对象的定义简单代码,概念的理解类是对象的模板 可以看做同一类型的对象的标准对象那么是现实中的实体类是抽象的 定义了对象具有的属性和方法而对象是实体举个例子人这个类 定义了属性有身高和体重 方法有睡觉 吃饭你是lam105141822 假设身高178,体重65KG 你是人这个类的一个对象 你具有类定义的睡觉和吃饭方法 类与对象:Java语言的面向对象机制Design Pattern for Java人月神话封装、继承和多态的理解,继承的例子类与对象:Java语言的面向对象机制Design Pattern for Java人月神话OOObject Oriented:三个最核心的概念封装:隐藏一些不需要被外界知道的细节继承:现实世界中一种抽象具体的关系 水果 蕉 西瓜 皇帝蕉 大蕉 香蕉 黑美人 黄肉 红肉 白肉IS-A 皇帝蕉 is a蕉 蕉 is a水果继承使得上层类型的代码可以为下层重用多态:同一个名字在不同的场景下有不同的形态不同的动作如:Ctrl + C Ctrl + V类:classclass Dog String strDogName;int nAge;/年龄float weight;/重量void eat(Food f);/吃的动作,吃的必须是Foodvoid sleep(int nHour);/睡眠的时间void play();void run(int nDistance);Dog();/构造方法,用于初始化对象Dog(String name, int age);public static void main(String args) Dog g = new Dog(“Mike, 4);g.eat(new Bone();/假设Bone是一种Foodg.play();g.run(1000);g.sleep(1);反射:是Java语言一种特殊的机制:通过字符串的“名字找到对象或调用方法。创立一个对象CatCat c = new Cat();Dog g = new Dog();Design Pattern认为这样创立对象不好,把要创立什么对象都写在源代码中Hard Code,好的写法应该如下:/以字符串的“Cat作为参数,得到Cat类的对象Animal a = Anmial.getInstance(“Cat);/灵活,反射/通过字符串的名字调用某个方法想让Cat表演节目节目1:run(5), sleep(5), jump(3), round(3), sit()节目2:round(5), sleep(2), run(4), rround(5), sit()传统方法:Cat c = new Cat();c.run(5); c.sleep(5); c.jump(3).c.round(5);c.sleep(2);增加节目3,要重新编译源代码修改节目2,也要重编译源代码比拟好的做法是用反射,先把动作顺序记在文本文件中invoke(第一个动作名字);/通过反射调用方法invoke(第二个动作名字);invoke(第三个动作名字);把表演本身和表演的内容别离泛型;把类型作为参数一般的参数,是数值类型或类类型void f(double a, double b, double c) /数值类型参数/用求根公式解Cat.play(Cat anothercat) /类类型参数/两只猫在玩类型:Cat、int,long, float.Java语言的容器类Container:泛型类数组、向量、列表。数组中放什么类型的对象,可以在创立数组时指定List l = new LinkedList();List ll = new LinkedList();接口的理解;能够获得效劳的界面public interface myf void power(boolean b);/电源开关void inc_temp();/升温void dec_temp();/降温接口中没有任何实现,只有效劳的描述效劳的描述与效劳的实现别离Java语言的多继承问题:Java语言不支持多继承一个儿子只能有一个父类 苹果 梨 苹果梨把梨做成接口,一个Java类可以继承一个类,实现n个接口计算分段函数的程序;public class func public static void main(String args)Scanner reader = new Scanner(System.in);double x = reader.nextDouble();double y ;if ( x 0 ) y =-1 + 2 * x;else if (x = 0) y = -1;else y = -1 + 3 * x;
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号