Java复习day02

一.面向对象特征二——继承性

1)子类继承了父类,就获取了父类的方法和属性;

2)在子类中,可以使用父类中定义的方法和属性,也可以创建新的数据;

3)Java中。继承的关键字是extends

4)子类不可以直接访问父类中私有的成员变量和方法,要通过getXxx()和setXxx()方法;

5)一个子类只能有一个父类,一个父类可以派生出多个子类。

二.方法的重写

1)定义:在子类中可以对父类的方法进行改造,也称为方法的重置,覆盖。程序执行时,子类的方法将覆盖父类的方法。

2)要求:

子类重写的放大必须和父类具有相同的方法名称,参数列表;

子类重写方法的访问权限不能小于父类被重写的方法的访问权限;(子类不能重写父类中声明private的方法)

子类重写方法的返回值类型不能大于父类被重写方法的返回值类型。

3)注意:

子类与父类同名同参数的方法必须声明为非static类型(重写);同时声明为static类型的(不是重写)

三.关键字super

1)super的使用

super可用于访问父类中定义的属性;

super可用于调用父类中定义的成员方法;

super可用于在子类构造器中调用父类的构造器。

2)调用父类构造器

子类中所有的构造器默认都会访问父类中空参数的构造器;

当父类中没有空参数的构造器时,子类的构造器必须通过this(参数列表)或者super(参数列表)语句指定调用本类或者父类中相应的构造器,且必须放在构造器的首行。

如果子类构造器中既未显式调用父类或者本类的构造器,且父类中又没有无参的构造器,则编译出错。

四.面向对象的特征三——多态性

1)对象的多态性:父类的引用指向子类的对象

2)Java引用变量有两个类型:

编译时类型:由声明该变量时使用的类型决定,看左边

运行时类型:由实际赋给该变量的对象决定,看右边

3)Java中子类的对象可以代替父类的对象使用

一个变量只能由一种确定的数据类型;

一个引用变量可能指向多种不同类型的对象。

Person p = new Student();
Object o = new Person();//o指向Person的对象
o=new Student();//o指向Student的对象

子类可以看作特殊的父类,所以父类类型的引用可以指向子类的对象,称为向上转型

4)多态总结:

多态提高了代码的通用性,常用作接口重用;

多态的实现需要存在继承或者实现关系;有方法的重写;

成员方法:

编译时,要查看引用变量所声明的类是否有所调用的方法;

运行时,调用实际new的对象所属的类的重写方法。

5)instanceof操作符:

x instanceof A:检验x是否为A的对象,返回值为boolean类型

要求x所属的类与类A必须是子类或者父类的关系,否则编译错误;

如果x属于类A的子类B,x instanceof A也为true。

6)Casting操作符:

基本数据类型的Casting:

自动类型转换:小的数据类型可以自动转换成大的数据类型;

强制转换类型:可以把大的数据类型强制转换(casting)成小的数据类型;

Java对象的强制类型转换:

从子类到父类的转换可以自动进行;

父类到子类的转换必须通过强制类型转换实现(Casting);

无继承关系的引用类型间的转换是非法的;

在使用前可以使用instanceof操作符测试一个对象的类型。

五.Object类的使用

1)Object类是所有Java类的根父类

2)==与equals的区别:

==:

基本类型比较:只要两个值相等,即为true;

引用类型比较:只有指向同一个对象时,==才返回true;

equals:可以重写,用于比较两个对象的内容是否相等

3)toString()方法:

toString():在Object类中定义,返回值是String,返回类名和它的引用地址;

String中重写了toSrting()方法;

用户可以自定义toString()方法。

六.包装类的使用

1)装箱:基本数据类型包装成包装类

通过包装类的构造器实现

int i=50;

Integer t = new Integer(i);

2)拆箱:获得包装类的基本数据类型:

boolean b = bObj.booleanValue();

3)字符串转换成基本数据类型:

通过包装类的构造器

int i = new Integer("12");

通过包装类的parseXxx(String s)

Float f = Float.parseFloat(String s);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值