java基础day10

Day10
一、内部类
  • 内部类:类里面嵌套一个类==>类似于身体与心脏
内部类的语法:  

public class 外部类名{ public class 内部类名{ 类内语句 } }

  • 特点:
    1.内部类可以获取外部类的属性与方法(包括私有的)
    2.外部类获取不到内部类的属性与方法
    (1)公有的内部类:
    获取内部类的语法是:外部类名 . 内部类 对象的名称 = new 外部类(). new内部类()
    (2)私有的内部类:内部类只能本类访问,外部类和其他类都访问不了
注意:变量重名的情况,如果外部类的变量与内部类的变量重名    
  • 访问外部类的变量的语法: 类名.this.变量名

3.静态内部类:加上静态关键字static,一般会去掉访问修饰符

静态内部类的语法:外部类.内部类 对象名 = new 外部类.内部类()  

4.方法内部类

  • 语法:访问修饰符 返回值 方法名称(参数列表){ class 类名{ } }
注意点:
  • 不能有访问修饰符
  • 生命周期随着方法的开始而开始,结束而结束
  • 在方法里的内部类的方法,不能直接调用,但是可以间接调用,在外部类的方法里实例化这个对象(内部类),然后调用其方法(内部类)

5.匿名内部类:(no name)一般是在继承或实现的基础上建立匿名内部类

  • 匿名内部类的语法:new 抽象类或接口 { //必须实现的方法 }
二、访问修饰符
  • public > protected > 默认 > private
  • 在开发里,如果想对外提供使用的定义public,只想本类自己使用的定义private
    访问修饰符作用范围
三、总结

今天总结了昨天所学的内容,包含着
1.抽象:
抽象类: 必须使用这个关键abstract 不能够被实例化
抽象方法: (1) 必须使用这个关键abstract;(2) 没有方法体 抽象方法必须都在抽象类里
抽象类: 一般是父类, 有些具体的功能是抽象的概念
2.多态: 一种事物多钟形态(对象的多态性)
(1)必须在继承里;(2)一般有重写
3.(1)多态中访问变量: (编译看左边,运行看左边)
(2)多态中访问方法:(编译看左边,运行看右边)
(3)向上转型: 父类名称 对象名= new 子类名称 (自动类型转换)
(4)解析: 父类的引用 执行 子类的具体对象
(5)弊端: 不能够访问到子类独有的方法
(6)产生一个错误 : 类转换类型 instanceof (避免)
(7)向下转型: 子类名称 子类对象=(子类名称)向上转型的对象名
(8)多态的两种体现形式:以父类作为参数;以父类作为返回值
3.接口(关键字interface)
(1)定义接口的语法: 访问修饰符 interface 接口名称{ }
// 接口里都是抽象方法 ,不能有普通方法.
(2)实现接口的语法 : implements Pager,Link (implements 接口1,接口2)
(3)接口里没有变量, 都是常量
(4)接口里的方法都是抽象方法
(5)接口里没有构造方法
4.注意点
(1)类与类 之间关系:可以单继承 , 不可以多继承
(2)类与接口的关系: 可以实现多个接口
(3)接口与接口 关系: 可以单继承 , 不可以多继承
(4)抽象类 与接口的关系 抽象类:是最原始的状态 接口: 就是定义了一些约束。
(5)实现与继承可以混合使用
另外,今天还完成了一个小项目,汽车租赁系统的代码构造,让我们充分地理解了java的三大特性:封装、继承、多态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值