java学习基础知识三

一、关键字this
1、使用this()必须放在构造器的首行!
2、使用this调用本类中的其他构造器,保证至少有一个构造器不是用this(就是不能出现构造器自己调用自己)

二、javaBean
1、javaBean是一种java语言写成的可复用的组件
2、所谓javaBean,是指符合如下标准的java类:
  →类是公共的;
  →有一个无参的公共的构造器;
  →有属性,且有对应的get、set方法
3、用户可以使用javabean将功能、处理、值、数据库访问和其他任何可用用java代码创造的对象进行打包,
并且其他开发者可以通过内部的JSP页面、Servlet、其他javabean、applet程序或者应用来使用这些对象。
用户可以认为javabean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变

三、继承
1、概念:把共性的东西抽取出来形成父类,实际需求的子类在继承父类的基础上写自己特有的代码即可
2、类继承语法规则:class Sutdent extends Person{}
3、作用:

  →继承的出现提高了代码的复用性;
  →让类与类之间产生了关系,提供了多态的前提;
  →不要仅为了获取其他类中某个功能而去继承。
4、在java中,继承的关键字是"extends",即子类不是父类的子集,而是对父类的“扩展”
(子类中既有父类中定义的属性和方法,还可以定义新的属性和方法)
5、继承的规则:子类不能直接访问父类中私有的(private)的成员变量和方法(可通过其他操作,如set,get)
6、java只支持单继承,不允许多重继承(可多层继承):即一个子类只能有一个父类,但一个父类可以有多个子类

四、方法的重写(override)
定义:在子类中可以根据需要对从父类中继承来的方法进行改造,也称方法的重置、覆盖。在程序执行时,子类的方法将覆盖父类的方法。
要求:
1、重写方法必须和被重写方法具有相同的方法名称、参数列表和返回值类型。
2、重写方法不能使用比被重写方法更严格的访问权限。
3、重写和被重写的方法必须同时为static,或同时为非static。
4、子类方法抛出的异常不能大于父类被重写方法的异常。

五、注意重载与重写:
方法的重载:一个类可以有多个同名的方法。
方法的重写:子类可以重写父类的方法,覆盖父类的方法

六、关键字super
1、在Java类中使用super来调用父类中的指定操作:
  →super可用于访问父类中定义的属性
  →super可用于访问父类中定义的成员方法
  →super可用于在子类构造方法中调用父类的构造器
2、注意:
  →尤其当子父类出现同名成员时,可以用super进行区分
  →super的追溯不仅限于直接父类(多层继承)
  →super和this的用法很像,this代表本类对象的引用,super代表父类的内存空间的标识
3、this与super的区别:

七、类对象的实例化过程:

   

 

八、面向对象特征之三:多态性
1、多态性,是面向对象中最重要的概念,在java中有两种体现:
  →方法的重载(overload)和重写(override)
  →对象的多态性——可直接应用在抽象类和接口上
2、java引用变量有两个类型:编译时类型和运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。
若编译时类型和运行时类型不一致,就出现多态(Ploymorphism)
3、子类可以看作时特殊的父类,所以父类类型的引用可以指向子类的对象——向上1转型(upcasting)
4、多态小结:
  →前提:需要存在继承或者实现关系; 需要有覆盖操作;
  →成员方法:编译时,要查看引用变量所属的类是否有所调用的方法 运行时,调用实际对象所属的类中的重写方法
  →成员变量:不及备多态性,只看引用变量所属的类

九、instanceof操作符
x instanceof A:检验x是否为类A的对象,返回值为boolean型,当x所属的类与类A是子类和父类关系,返回值为true,否则返回false

十、Object类
1、Object类是所有java类的根父类(多层继承,处于最高层的父类是Object类)
2、如果在类的声明中未使用extends关键字指明其父类,则默认父类为Object类

原文地址:https://www.cnblogs.com/MeiToufu/p/14319065.html