六、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——类和对象|抽象和接口|构造方法与继承...相关推荐

  1. java当前时间转化毫秒_Java学习笔记-时间相关类

    1. Date类: java.util.Date 时间原点:1970年1月1日00:00:00(中国+8小时) System.currentTimeMillis() 计算当前时间到原点经历的毫秒数 无 ...

  2. Python学习笔记 (类与对象)

    Python学习笔记 (类与对象) 1.类与对象 面向对象编程语言类: 一个模板, (人类)-是一个抽象的, 没有实体的对象: (eg: 张三, 李四) 属性: (表示这类东西的特征, 眼睛, 嘴巴, ...

  3. java作用域对象笔记_Java学习笔记(七)——对象

    一.类与对象 1.类的定义 类就是模型,确定对象将会拥有的特征(属性)和行为(方法). 2.类的特点 (1)类是对象的类型 (2)具有相同属性和方法的一组对象的集合. 3.对象的属性: 对象具有的各种 ...

  4. java画笔覆盖在界面_Java学习笔记:swing画笔工具Graphics,刷新页面,键盘事件,随机数等【诗书画唱】...

    Graphics:画笔工具 setColor:设置画笔颜色 DrawRect:空心矩形 fillRect:实心矩形 DrawOavl:空心圆 fillOavl:实心圆 DrawLine:画线(注意) ...

  5. Java学习笔记_类和对象

    ·类:是一组相关属性和行为的集合,可以看成是一类事务的模板,使用事物的属性特征和行为特征来描述该类事物. ·属性:该事物的状态信息 ·行为:就是该事物能够做什么 ·对象:一类事物的具体体现,对象是类的 ...

  6. Java学习笔记1——类和对象

    面向对象 对象:万物皆对象 面向对象 类:模子,属性+方法,类是对象的类型,是具有相同属性和方法的一组对象的集合 对象属性:对象拥有的各种特征,"对象有什么" 对象方法:对象执行的 ...

  7. Head First Java学习笔记(2):类与对象

    类 1.类是定义同一类所有对象的变量和方法的蓝图或原型. 2.实例变量的值由类的每个实例提供.当创建类的实例时,就创建了这种类型的一个对象,然后系统为类定义的实例变量分配内存.然后可以调用对象的实例方 ...

  8. 冰冰学习笔记:类与对象(下)

    欢迎各位大佬光临本文章!!! 还请各位大佬提出宝贵的意见,如发现文章错误请联系冰冰,冰冰一定会虚心接受,及时改正. 本系列文章为冰冰学习编程的学习笔记,如果对您也有帮助,还请各位大佬.帅哥.美女点点支 ...

  9. 冰冰学习笔记:类与对象(上)

    欢迎各位大佬光临本文章!!! 还请各位大佬提出宝贵的意见,如发现文章错误请联系冰冰,冰冰一定会虚心接受,及时改正. 本系列文章为冰冰学习编程的学习笔记,如果对您也有帮助,还请各位大佬.帅哥.美女点点支 ...

最新文章

  1. [Java]LeetCode297. 二叉树的序列化与反序列化 | Serialize and Deserialize Binary Tree
  2. 微信防撤回python代码_Python实现微信防撤回
  3. 二叉树的前中后序遍历之迭代法(统一风格迭代方式)
  4. H5+JS+相对单位rem实现第三方支付页(输入金额+模拟数字键盘+自适应布局+大写金额)
  5. 宁夏警官学院计算机专业,宁夏警官职业学院毕业设计模板.docx
  6. hbase java admin_java连接hbase(一):Admin功能接口表管理
  7. 多媒体技术复习汇总 收藏
  8. python打开csv文件画散点图_在Python 3.6中从CSV绘制纬度经度
  9. SylixOS网络性能测试
  10. Echarts Y轴min显示奇葩问题(做此记录)
  11. 三种call解释(一): cdcall stdcall naked call等在hook时,保持堆栈平衡
  12. os.system和os.popen函数的区别
  13. python实现服务器监控报警消息用微信发送(附代码)
  14. 共模信号和差模信号的区别和抑制
  15. Three-level Laser
  16. 《Towards Conversational Recommendation over Multi-Type Dialogs》解读,融合多个对话类型的对话式推荐
  17. 05——去哪儿(旅游网站首页开发)
  18. 铁矿石加速下跌,沪铜认购大涨,甲醇09-01季节性反套2022.4.22
  19. 我的世界服务器修改武器伤害,我的世界:8张特性图,武器伤害没上限,物品全靠刷,老mc秒懂!...
  20. 23电工杯数学建模A题

热门文章

  1. vue中Npm run build 根据环境传递参数方法来打包不同域名
  2. 操作系统进程间通信简述
  3. Codeforces Round #246 (Div. 2) D. Prefixes and Suffixe 后缀数组
  4. 爬虫抓取表格中的数据
  5. 从命令行接收多个数字,求和之后输出结果
  6. SQL Server 数据库中的 MD5 和 SHA1
  7. 【转载】中国小吃(英文表达)
  8. Android 中View仅仅能接收到ACTION_DOWN无法接收ACTION_MOVE和ACTION_UP解决的方法
  9. java基础之----java常见异常及代码示例
  10. 安装Greenplum-perfmon-web监控软件遇到的问题及解决