lesson 1 总结

1.Java程序的编写翻译和执行过程

  java的编写通过创建一个记事本文件改为java拓展名,在文件里编写java代码完成编写。
  java文件通过jdk里的javac.exe编译生成机器可识别的二进制class文件完成翻译。
  生成的class文件通过jdk中的java.exe装载进jvm(虚拟机)中运行。

2.JDK,JRE,JVM的区别和联系
 
  JDK是针对java程序开发所开发的应用程序包,能实现java程序的编译(javac),打包(jar),反编译(javap),运行(java)
  等功能。
  JRE是可以在其上运行、测试和传输应用程序的Java平台。它包括Java虚拟机、Java核心类库和支持文件。但不包含JDK中的工具。
  JVM是java虚拟机,是JRE中的一个工具。

3.类与对象的关系分析

  类是一种抽象的事物的形象,它定义了一种事物的公共属性,功能。
  而对象则是一个真正存在的事物,它有自己的属性值和功能。
  比如学生是一个类,它具有学生的身高体重学号成绩等等的公共属性,也有看书,写作业,考试等等的公共功能。而学生张三则是
  真正存在的一个人,他有自己的身高比如172,体重60kg等等自己的属性值。

4.面向过程与面向对象的理解

  面向过程是为了完成某一功能而实现的一个方法。
  而面向对象是利用实例化了的对象,来进而调用这个对象本身拥有的方法来实现这一个功能。
  比如要对某些数据求和,可以编写面向过程的程序,直接用for循环来求和;也可以编写一个计算器类,它拥有求和的方法,
  然后用计算器类来实例化一个对象,然后调用这个对象的求和方法来实现这一个功能。

5.如何定义类,如何创建对象,如何调用属性和方法

  定义类:  访问权限+class +类名{} 如: public class student{}
  创建对象: 类名+对象名 = new 类名() 如: student stu = new student();
  调用属性: 对象名+.+属性变量名 如: stu.name
  调用方法: 对象名+.+方法名() 如:stu.study();

6.构造方法的特点

  一个类中有且只有一个参数情况完全一样的构造方法,如果程序员未定义构造方法,则系统自动赋予该类一个无参数无内容的构造
  方法,构造方法在实例一个对象之后马上被调用。

7,方法重载的理解

   方法的重载是通过定义多个同名但是参数情况(如参数个数,类型,类型顺序)不一样的方法来实现该方法的重载功能。
   如study();study(int a);study(char ch,int a);study(int a,char ch);都是可行的重载。

8.为什么需要继承?如何继承?继承到了什么?

  需要在一个类的基础上定义一个新类,要求这个新类具备原来的类的所有功能属性时,避免重复定义的繁琐操作而需要继承;
  利用extends关键字来继承,比如:public UNStudent extends Student{};这样就能使子类UNStudent继承了超类Student;
  在子类继承超类时,除了超类的构造方法外,其余的属性和方法全部继承下来。

9.自动转型与强制转型

  自动转型需要 “=” 左边的数据类型比右边的数据类型大;
  强制转型则是当需要数据类型大的赋值给数据类型小的变量时采取的(若是类,则超类等同于大的数据类型,子类为小的数据类型)。
  (1)可能会出现逻辑错误,
  (2)只有当这个对象在创建的时候就是new的这个类型或者这个类的子类类型,才能够强制转型,
  (3)一个对象被自动转成父类类型之后,如果还想调用子类特有的方法,就需要强制转型

10.子类特有的方法的调用

  子类除了可以从超类继承超类所以的方法和属性外还能自己定义新的方法。
  在子类实例化了一个对象之后可以调用子类特有的方法,注意在调用时只能调用对象在声明时对应类所拥有的方法和属性。

11.重写的方法的调用

  通过子类实例化的对象可以调用重写了的方法,此时对象只会调用在子类中重写的方法,特别注意的是调用的stu2.study();
  虽然实例化stu2时用的是超类Student,但是new的是子类UNStudent,在new开辟的空间里装载进去的study()方法是子类UNStudent里
  重写了的study()方法。

12.重写与重载的理解

  重写发生在子类和超类之间,而重载只能发生在同一个类中。

13.多态的理解

  多态:由于继承和重写机制,相同类型的对象,调用相同的方法,得到的结果可能不一样。

猜你喜欢

转载自pgl.iteye.com/blog/1947312