java 由接口构造对象_Java学习笔记04——类和对象|抽象和接口|构造方法与继承...
六、Java类
1. Java中用关键字class来创建类.
2. 类中属性和方法称为类的成员;类的声明和方法要在同一个文件内,不同于C++.
3. 类的定义:
[] class [extends][implement]{
}
4. 类名首字母要大写.
5. 类中定义的变量称为类的成员变量;类的方法体中定义的变量和方法的参数称为局部变量.
6. 成员变量的定义:
[] ;
7. 类的方法的定义:
[方法修饰符] ([方法参数列表]){
方法体
}
8. 类的修饰符有:public,private,final,abstract.或缺省
9. 类的变量修饰符有:public,private,protected,static,final或缺省
10.类的方法修饰符有:public,private,protected,final,static,abstract,synchronized
11.成员变量的访问类型:public,protected,friendly,private.(类内,包内,子类,包外)
12.类的命名空间:”包名.类名.成名”
13.final关键字:“最终的”。
a) 修饰变量——>常量。
b) 修饰类——>该类不能被继承。
c) 修饰方法——>该方法不能被子类重写。
14.static关键字:”静态的”
a) 函数体内的变量不能声明为静态变量;
b) 静态变量在一个类中生成的所有对象中是唯一的;
c) 静态方法中只能调用所在类的其它静态方法或变量,不能在main()方法中定义静态方法
d) 静态初始化块:[static] { …//初始化代码}
e) 静态初始化块在对象创建时隐式执行,比类的构造方法还要先执行!
15.类的main()方法:作为Java类的运行起点,main()方法所在的类一般为主类,但在哪个类并没有很大关系.Java规定类文件的文件名要与定义为public的类名相同.
16.this关键字
隐藏的实例变量可以用this来访问,可省略的.(方便用户理解程序)
17.GC垃圾回收器:
1) new----àfinalize
2) new分配内存:栈内存 | 堆内存.
七、类的对象
1. 对象的声明: ;
2. 对象初始化: 对象名 = new 类的构造方法名([方法参数]);
3. 对象的创建: = new ([方法参数]);
4. 对象的调用: 点操作”.”
八、类的构造方法
1. Java为所有类都自动提供了一个默认参数为空的构造方法,用于初始化成员变量.
2. 构造方法与类的名称相同,并且不返回任何值,void类型也不行.
3. 构造方法是当类的实例对象创建时由编译器自动运行.
4. 如果程序没有提供构造方法,则默认运行无参的构造方法.
5. 如果程序有提供有参的构造方法,则编译器不再自动提供无参构造方法,此时如果需要无参的构造方法,需自己写入.
6. 构造方法的重载:定义包含不同参数的构造方法
7. 构造方法的继承:
a) 子类可以无条件继承父类中的无参的构造方法;
b) 如果子类没有定义构造方法,则子类将自动继承父类的无参构造方法作为自己的构造方法;如果子类有定义构造方法,则程序运行时,先执行父类的无参构造方法,再执行子类自己的构造方法;
c) 子类无法自动继承父类的有参的构造方法,但可通过super调用
九、类的继承
继承:从现有的类中派生出新的类.
1. Java中,若类C1是从另一个类C2派生出来的,那么C1为子类,C2为父类.
2. 子类从父类中继承所有的成员变量和方法,并可创建新的变量和方法.继承后子类不能访问父类中private的变量或方法.
3. 关键字extends:
Class A{}
Class B extends A{}
4. Java中子类和父类都有自己的构造函数,父类的构造函数构造父类部分,子类的构造方法构造子类部分.但当子类要使用父类的构造方法时,可用super关键字调用.
5. Java中每个类都是从java.lang.Object类中继承的,是所有类的隐性父类,提供许多方法.
6. Java中不支持多重继承,一个子类只能有一个父类
7. 内部类
8. 匿名类,匿名内部类
9. 重写与重载
a) 方法重载:方法名相同,参数的个数或类型不同,与返回类型无关,发生在同一个类中
b) 方法重写:方法名,参数的个数和类型,返回类型都相同,而方法体的实现不同.发生在子类和父类之间
c) 重写的子类抛出的异常应该小于父类对应方法抛出的异常范围.
十、抽象和接口
抽象:
1. 抽象:声明方法的存在却不实现它的类称为抽象类
2. 抽象类中可以包含抽象方法和非抽象方法,也可以只包含非抽象方法。
3. 实现抽象类的子类必须实现抽象类中全部的抽象方法,不然仍为抽象类。
4. 抽象类的作用之一是防止父类中的方法没被重写。
接口:
1. 接口定义:[接口修饰符] interface [extends] { 接口体 }
a) 接口修饰符:public或缺省
2. 接口的实现:implements
3. 接口中所有的方法都是抽象方法,所有的变量都是static型或final型。
4. 接口被实现时,其内的所有抽象方法都必须被实现
5. 接口可以供继承。
九、包package
java 由接口构造对象_Java学习笔记04——类和对象|抽象和接口|构造方法与继承...相关推荐
- java当前时间转化毫秒_Java学习笔记-时间相关类
1. Date类: java.util.Date 时间原点:1970年1月1日00:00:00(中国+8小时) System.currentTimeMillis() 计算当前时间到原点经历的毫秒数 无 ...
- Python学习笔记 (类与对象)
Python学习笔记 (类与对象) 1.类与对象 面向对象编程语言类: 一个模板, (人类)-是一个抽象的, 没有实体的对象: (eg: 张三, 李四) 属性: (表示这类东西的特征, 眼睛, 嘴巴, ...
- java作用域对象笔记_Java学习笔记(七)——对象
一.类与对象 1.类的定义 类就是模型,确定对象将会拥有的特征(属性)和行为(方法). 2.类的特点 (1)类是对象的类型 (2)具有相同属性和方法的一组对象的集合. 3.对象的属性: 对象具有的各种 ...
- java画笔覆盖在界面_Java学习笔记:swing画笔工具Graphics,刷新页面,键盘事件,随机数等【诗书画唱】...
Graphics:画笔工具 setColor:设置画笔颜色 DrawRect:空心矩形 fillRect:实心矩形 DrawOavl:空心圆 fillOavl:实心圆 DrawLine:画线(注意) ...
- Java学习笔记_类和对象
·类:是一组相关属性和行为的集合,可以看成是一类事务的模板,使用事物的属性特征和行为特征来描述该类事物. ·属性:该事物的状态信息 ·行为:就是该事物能够做什么 ·对象:一类事物的具体体现,对象是类的 ...
- Java学习笔记1——类和对象
面向对象 对象:万物皆对象 面向对象 类:模子,属性+方法,类是对象的类型,是具有相同属性和方法的一组对象的集合 对象属性:对象拥有的各种特征,"对象有什么" 对象方法:对象执行的 ...
- Head First Java学习笔记(2):类与对象
类 1.类是定义同一类所有对象的变量和方法的蓝图或原型. 2.实例变量的值由类的每个实例提供.当创建类的实例时,就创建了这种类型的一个对象,然后系统为类定义的实例变量分配内存.然后可以调用对象的实例方 ...
- 冰冰学习笔记:类与对象(下)
欢迎各位大佬光临本文章!!! 还请各位大佬提出宝贵的意见,如发现文章错误请联系冰冰,冰冰一定会虚心接受,及时改正. 本系列文章为冰冰学习编程的学习笔记,如果对您也有帮助,还请各位大佬.帅哥.美女点点支 ...
- 冰冰学习笔记:类与对象(上)
欢迎各位大佬光临本文章!!! 还请各位大佬提出宝贵的意见,如发现文章错误请联系冰冰,冰冰一定会虚心接受,及时改正. 本系列文章为冰冰学习编程的学习笔记,如果对您也有帮助,还请各位大佬.帅哥.美女点点支 ...
最新文章
- [Java]LeetCode297. 二叉树的序列化与反序列化 | Serialize and Deserialize Binary Tree
- 微信防撤回python代码_Python实现微信防撤回
- 二叉树的前中后序遍历之迭代法(统一风格迭代方式)
- H5+JS+相对单位rem实现第三方支付页(输入金额+模拟数字键盘+自适应布局+大写金额)
- 宁夏警官学院计算机专业,宁夏警官职业学院毕业设计模板.docx
- hbase java admin_java连接hbase(一):Admin功能接口表管理
- 多媒体技术复习汇总 收藏
- python打开csv文件画散点图_在Python 3.6中从CSV绘制纬度经度
- SylixOS网络性能测试
- Echarts Y轴min显示奇葩问题(做此记录)
- 三种call解释(一): cdcall stdcall naked call等在hook时,保持堆栈平衡
- os.system和os.popen函数的区别
- python实现服务器监控报警消息用微信发送(附代码)
- 共模信号和差模信号的区别和抑制
- Three-level Laser
- 《Towards Conversational Recommendation over Multi-Type Dialogs》解读,融合多个对话类型的对话式推荐
- 05——去哪儿(旅游网站首页开发)
- 铁矿石加速下跌,沪铜认购大涨,甲醇09-01季节性反套2022.4.22
- 我的世界服务器修改武器伤害,我的世界:8张特性图,武器伤害没上限,物品全靠刷,老mc秒懂!...
- 23电工杯数学建模A题
热门文章
- vue中Npm run build 根据环境传递参数方法来打包不同域名
- 操作系统进程间通信简述
- Codeforces Round #246 (Div. 2) D. Prefixes and Suffixe 后缀数组
- 爬虫抓取表格中的数据
- 从命令行接收多个数字,求和之后输出结果
- SQL Server 数据库中的 MD5 和 SHA1
- 【转载】中国小吃(英文表达)
- Android 中View仅仅能接收到ACTION_DOWN无法接收ACTION_MOVE和ACTION_UP解决的方法
- java基础之----java常见异常及代码示例
- 安装Greenplum-perfmon-web监控软件遇到的问题及解决