2019/07/13的java准备

博客介绍了学习内容的记忆规划,如早上、中午、晚上背诵及后续复习时间安排。还阐述了Java语言特点,包括半编译半解释、代码编译流程,以及构造器与方法区别、变量默认值、隐式转换规则等,同时讲解了封装、继承、多态等面向对象编程概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 早上查题,背一遍然后检查自己一遍以上
  • 中午有时间就背一遍以复习昨天的为主
  • 晚上背一遍,第二天中午再看一眼:day+1
  • 第四天课间看一遍:day+3
  • 第七天课间看一遍:day+6
  • 第十五天课间看一遍:day+14

java语言特点:半编译半解释(通过jvm,多个平台,各有自己的jvm)

源代码(.java)->javac -> java字节码(.class)->java ->本地机械码文件(cpu只能运行机械码)


构造器和方法 的区别

  • 构造器也叫构造方法(一方面长得像,功能也像;永远都不是方法)
  • 构造器永远没有返回值,不需要写void,(除了权限控制符)也不能有其他的修饰符

各种变量类型的默认值

整数型0
浮点型0.0
字符型空白字符(不是空格),对应整数为0
布尔型FALSE
引用型null

隐式转换规则
在这里插入图片描述
输入浮点默认是double,需要加大小 f 转


==与equals的区别
== 的作用:

  • 可以比较基本类型:比较的是值是否相同
  • 也可以比较引用类型:比较的是地址值是否相同
  • 比较之前需要保证左右两边操作数类型相同,或者彼此能相互自动转换,否则比较时会报错

equals 的作用:

  • equals是方法。
  • 仅能比较引用类型:默认情况下,比较的是地址值
  • object衍生子类,其子类可以根据情况重写该方法,重写后可以比较对象的属性值是否相同,String代表性地,可以比较字符串

理解封装
隐藏对象的属性和方法的实现细节,只公开对外接口。封装类的属性和方法时会使用private、default、protected、public等访问权限修饰符

与封装有关的访问权限修饰符
private(私有):私有的,不对外公开,类的private成员只能被该类的成员访问。private权限最小,限制类外访问,一般把属性设为private,让其他类不能直接访问属性,达到保护的目的。
default(默认):不使用权限修饰符时(即default)的成员在类内以及在同一个包中的其他类可以访问
public(公有):公有的,最高的访问级别,public成员可以在所有其他类中访问
protected(受保护):同一个包内,各类可以彼此访问该修饰符修饰的属性和方法,但不在同一个包情况下,除子类外其他类都不能彼此访问相应的属性和方法,子类在和父类不同包情况下,虽不能直接访问对应属性和方法,但可以继承这些属性和方法。

与封装有关的访问权限修饰符


继承的实现,优缺点

		java语法中一个类只要被extends 就能成为另一个类的父类;一个类只能有一个父类;
		如果父类没有无参的构造器,子类则必须调用有参的super才可以不报错;
		代码简洁,支持复用
		不能任意代码都拷贝,子类语法受到父类的限制,只能使用1次继承,每次子类诞生其实都同时诞生了一个父类对象,子类代码依赖父类代码

子类和父类的代码如何调用

子类实例化生成对象前需要先调用父类构造器,每一个子类对象的生产都伴随一个它的父类对象诞生,通过super()实现父类对象的诞生


super的作用:

第一种作用,当"super." ,代表当前正在运行或者使用或者生产的对象的父类对象(当前对象)。
第二种作用,当"super()",代表当前类的父类的某个构造器
super()只能第一行;和this()不能同时使用

子类对象和父类对象的关系

每一个子类对象都有一个super指向他自己的父类对象,子类自身没有父类的任何代码,只能通过父类对象取获取父类的资源


如何理解多态
多态:不修改代码,调整功能通过添加子类重写方法,调用父类/父接口引用传入子类对象来实现。

1.数据类型可以转换 
2.子类是一个完美父类 
3.子类可以选择自己的行为

一种事物多种形态


重写和重载
重写和重载的相同点:

1.方法的名字都相同

不同点:

1.位置不同:重载一个类中;重写在父类和子类中,
2.参数列表:重载形参不一致(个数,类型)	;重写形参一致
3.返回值:重载不看返回值; 重写返回值必须相同
4.权限修饰符:重载不看权限修饰符,重写子类方法权限修饰符不小于父类

引用数据类型的转换
引用数据类型部分能转,部分不能转。看继承

如果两个引用类型存在继承关系,编译不报错,如果是子类转父类可以,如果是父类转子类运行报错(除非父类对象原本是子类转的);如果不存在继承关系编译直接报错;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值