简单Java程序的编写.doc_第1页
简单Java程序的编写.doc_第2页
简单Java程序的编写.doc_第3页
简单Java程序的编写.doc_第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人月神话OO(Object 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语言一种特殊的机制:通过字符串的“名字”找到对象或调用方法。创建一个对象(Cat)Cat 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)Scanne

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论