Java 笔记 9:包,eclipse,this,继承

包的作用:
1.避免类的重名问题
有了包以后,类的名称就比较长了,类的全名称就变成了:包.类名

回忆:
java.util.Scanner: Scanner类的全名称
java.lang.String: String类的全名称

2分类组织管理众多的类
java.io:和IO(输入输出)有关
java.util:和各种常用工具类有关

3用于访问权限控制
如果某个类或某个方法的权限修饰符省略,那么就仅限于本包使用

如何声明包

语法格式:
package 包名

这句话有要求:
1一个.java源文件只能有一句
2必须在源文件的代码首行

包名的命名规范:
1所有单词都小写,每个单词之间用.分割
2习惯上用公司的域名
例如:
com.mysql.xxx
com.alibaba.xxx

一级域名:
com:商业
org:非营利性组织
gov:政府
。。。

如何编译带包的类
了解:
javac -d . 源文件名.java

如何运行带包的类
了解:
java 包.类名

如何使用其他包的类

前提:被使用的类或成员的权限修饰符要允许跨包使用
方式:
1使用全名称:包.类名
2使用import语句 + 简名称

说明:
1 import语句是写在package语句与class声明之间的
2 导包语句可以有很多句,导不同包的类
3 java.lang 包中类可以不使用import语句,就直接使用简名称
例如:System,String,Math
4 可以同时导入一个包中的很多类
import 包.*;
5 如果出现了不同包,但是类名相同
例如:
java.util.Date
java.sql.Date
只能一个选择使用全名称,一个使用简名称,不能同时使用简名称

Eclipse

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

快捷键

快捷键:
*

  • 通用的快捷键:
  • Ctrl + A:全选
  • Ctrl + C:复制
  • Ctrl + X:剪切
  • Ctrl + V:粘贴
  • Ctrl + Z:撤销
  • Ctrl + Y:反撤销
  • Ctrl + S:保存
  • eclipse的快捷键 :
  • Alt + /:内容提示
  • Ctrl +1:快速修复
  • Ctrl + Shift + O:快速导包
  • 快速复制选中行(块):
  • Ctrl + Alt + ↓
  • Ctrl + Alt + ↑
  • 快速删除选中行或光标所在行
  • Ctrl + D
  • 快速格式化:
  • Ctrl + Shift + F
  • 快速的注释:
  • 单行注释:Ctrl + / 再按一次取消
  • 多行注释:Ctrl +Shift + / 取消注释:Ctrl + Shift + \
  • 交换位置:
  • Alt + ↑
  • Alt + ↓
  • 在光标的下一行,插入一行开始编辑:
  • Shift + 回车
  • 查看某个类的源代码文件:
  • (1)选中类名,按Ctrl +单击
  • (2)Ctrl +Shift + T:输入类名,打开
  • 在打开的多个源文件中切换:
  • Ctrl + PaUp 或 Ctrl + PgDown
  • Alt + -> 或 Alt + <-
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
ctrl+alt+shift+a,然后选择行数多行编辑:ctrl+alt+shift+a,然后选择行数

this

  • 1、意思:当前对象
  • (1)构造器
  • 正在被创建的对象
  • (2)方法
  • 正在调用该方法的对象
  • 2、 用法
  • (1)this.属性
  • 当局部变量与成员变量同名时,可以在成员变量的前面加this.
  • (2)this.方法
  • 没有非用不可的时候
  • (3)this()或this(实参列表)
  • this()表示调用本类的无参构造
  • this(实参列表)表示调用本类的有参构造
  • this()或this(实参列表)必须在构造器的首行

面向对象基本特征二:继承

继承:

  • (1)延续
  • (2)扩展
  • 1、为什么要有继承?
  • (1)当某个类,需要派生出很多子类别
  • Person:
  • 需要派生出Teacher,Student等等子类别
  • 那么此时Person中的共有的部分,就不需要在子类别中再次去声明
  • (2)当多个类,出现了共同的特征时,可以把共同的部分抽取到父类中
  • 目的:
  • 代码的复用和扩展
  • 2、如何实现继承?
  • 【修饰符】 class 子类 extends 父类{
  • }
  • 子类:subclass,也称为派生类
  • 父类:superclass,也称为超类,基类
  • 3、继承的特点:
  • (1)子类继承了父类,
  • 从事物的特征来说,子类会继承父类所有的特征(属性和方法)。
  • 但是从代码操作角度来说,父类中私有的属性、方法在子类中是不能直接使用的
  • (2)子类继承父类时,构造器是不能被继承的
  • (3)子类继承父类时,在子类的构造器中一定要去调用父类的构造器
  • 默认情况下,调用的是父类的无参构造;
  • 如果父类没有无参构造,那么在子类的构造器的首行,必须手动调用父类的有参构造;

(4)Java只支持单继承,即一个Java类只能有一个直接父类

  •  只能有一个亲生父亲
    
  • (5)Java支持多层继承,即父类还可以有父类
  •  代代相传
    
  • (6)一个Java类可以同时有很多个子类,而且子类还可以有子类
  •  一个父亲可以有多个孩子,子孙满堂
    
  • (7)子类可以扩展父类没有的属性、方法

方法的重写:Override

  • 当子类继承了父类的方法时,但是父类的方法体不适用于子类了,那么子类可以选择进行“重写overwrite”。
  • 方法 = 方法签名/方法头 + 方法体
  • 重写有要求:
  • (1)方法名:必须和父类被重写的方法名“相同”
  • (2)形参列表:必须和父类被重写的形参列表“相同”
  • (3)返回值类型:
  • 基本数据类型和void:要求与父类被重写的方法的返回值类型“相同”
    
  • 引用数据类型:要求子类重写的方法的返回值类型 <= 父类被重写的方法的返回值类型
  •  	例如:
    
  •  		子类方法的返回值类型是Student,父类被重写方法的返回值类型是Student
    
  •  		子类方法的返回值类型是Student,父类被重写方法的返回值类型是Person
    
  •  		子类方法的返回值类型是Person,父类被重写方法的返回值类型是Student(错误的)
    
  • (4)修饰符
  • ①权限修饰符:子类重写的方法的权限修饰符的可见性范围 >= 父类被重写方法的权限修饰符的可见性范围
  •  	例如:
    
  •  	子类方法的权限修饰符是public,父类被重写方法的权限修饰符public
    
  •     子类方法的权限修饰符是public,父类被重写方法的权限修饰符protected
    
  • ②其他修饰符(后面讲)

super

  • 从父类中取查找,引用父类的xx
  • 要求:super只能方法在子类中可见的属性、方法、构造器
  • 用法:
  • 1、super.属性
  • 当子类声明了和父类同名的属性时,可以使用super.属性来访问父类的属性
  • 2、super.方法
  • 当在子类中需要调用父类被重写的方法时,可以使用super.方法
  • 3、super()或super(实参列表)
  • super();调用父类的无参构造
  • super(实参列表):调用父类的有参构造
  • 注意:
  • (1)super()或super(实参列表)必须在子类构造器的首行
  • (2)如果子类的构造器中,没有写super(),它也存在
  • 但是如果子类构造器中写super(实参列表),那么super()就不会存在的
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值