没有合适的资源?快使用搜索试试~ 我知道了~
java学习笔记.docx
需积分: 5 0 下载量 87 浏览量
2022-10-20
07:44:09
上传
评论
收藏 294KB DOCX 举报
温馨提示
试读
12页
java学习笔记.docx
资源详情
资源评论
资源推荐
1. JDK
2. Path 环境变量是操作系统外部命令搜索路径;Classpath 环境变量是类文件搜索路径。
3. JRE 是 Java Runtime Environment,即是 java 运行环境。包括 java 虚拟机、java 平台核心类
文件、其他支持文件。
JVM,Java Virtual Machine。它是由软件模拟出来的计算机,软件只需编译一次就可以在
不同的操作系统上运行。
.java file
编译器检查语法错误
.class file,可以在各种虚拟机上运行,对
于不同的操作系统有不同的虚拟机
执行同样的 class 文件,
结果相同
.class 文件
由虚拟机翻译成适合当前操作系统
的代码
由操作系统交给硬件再去执行
4. 字符集的作用,char 类型的变量可以存一个汉字(在 java 中,或者是 uincode 编码中)。
5. 字面量
整数字面量为整型(int),小数字面量为双精度浮点型(double)。数值型类型表数范围关
系:byte < short < int < long < float < long。
6. 面向对象(消除冗余
是一种编程方法,是一种思维模式,不是一种编程语言。
7. 栈内存和堆内存
生成对象:类名 对象名 = new 类名();
对象的本体(真正的对象)在堆内存中,对象名(引用)指向堆内存中的本体,在栈内存中开
辟一块空间,放对象名;
源文件
检查错误
字节代码
用户启动程序
Windows
JVM(1)
Ios
JVM(3)
Linux
JVM(2)
软件
JVM
操作系统
8. 重载的定义:两个或者多个函数在同一个类当中,函数名相同,参数列表不同。
9. 构造函数——无实参,有实参。
10. this
a. 使用 this 调用成员变量和成员函数,this 代表调用当前成员变量或函数的对象;
b. 使用 this 调用构造函数 this(参数列表),调用构造函数必须是构造函数中的第一条语
句。
11. static
a.静态变量 声明[static int i;] 调用:既可以用类名调用也可以用对象调用;所有的对
象所用的静态变量都是同一份,任何一个对象的静态变量得到修改,其他对象的静态变量也
会跟着修改。
b.静态函数 声明 [static void 函数名();] 静态函数也可以用类名来直接来调用;在静态
函数当中不能引用非静态的成员变量。
c.静态代码块 格式 [static{…}] 主要作用是为成员变量赋初始值,在装载的时候执行。
12. 继承 extends
在 java 中只支持单继承(一个子类只能继承一个父类,不允许多继承)【在 c++中一个子
类可以继承多个父类】;使用继承是为了减少重复代码。
13. 在子类的构造函数当中,必须调用父类的构造函数,不写的话,编译器会加一行代码
super(),自己写的话必须是构造函数的第一行代码;若是想自己调用父类的构造函数,在
括号里边加上参数就可以。【注意】和 this 的不同,this 是调用本类中的构造函数。
原因:消除重复代码
14. 函数的复写(override)
复写(在两个类中)也被称之为覆盖,重写。【区别】重载(在一个类中,函数的名相
同,参数不同)
语法特征:a. 在具有父子关系的两个类当中;b. 父类和子类各有一个函数,这两个函
数的定义(包括返回值类型,函数名字,参数)完全相同,里面的方法块不一样。
15. 使用 [super.父类成员函数] 可以调用父类的方法 (当在重写写父类的方法时可以用来
消除重复)。
16. 对象的转型(多态性的体现)
向上转型——将子类的对象赋值给父类的引用。
一个引用能够调用哪些成员(包括变量和函数)取决于这个引用的类型。
一个引用的调用的是哪一个方法取决于这个引用所指向的对象。
向下转型——将父类的对象赋值给子类的引用。过程:先把对象向上转型,在向下转型。
例如:Person 是父类,Student 是子类
Student s1 = new Student();
Person p = s1;
Student s2 = (Student)p;
17. 抽象函数——只有函数的定义,没有函数体的函数。声明:[abstract void fun(); ]。
18. 抽象类——使用 abstract 定义的类
a. 抽象类不能够生成对象
b. 如果一个类中包含抽象函数,那么这个类必须被声明为抽象类
c. 如果一个类中没有抽象函数,这个类也可以被声明为抽象类
19. 抽象类不能生成对象,但是却可以拥有构造函数。
20. 为什么要用抽象类?
【原因之一】如果一个类的某一个函数,这个函数必须由它的子类来实现,我们无法写
出子类通用的一个函数,最好的方法就是把这个函数定义为抽象函数,并且把这个类定
义为抽象类。这样就会强制要求在子类继承这个函数的时候对这个抽象函数进行复写
(override)。
21. 如果一段代码在语义上是有错误的,那么在语法上也应该有错(现在编程理论认为,但
实际上可能没实现)。
22. 软件包——为 java 类提供了命名空间
将类放置到一个包当中,需要使用 [package 包名;] 编译时需要使用 –d 参数,该参数
的作用是依照包名生成相应的文件夹。-d 后面是一个目录。例如:javac –d . test.java ,“ . ”
代表当前目录。一个类的全名应该是“包名” + “.” “类名”。
23. 包名的命名规范:1.要求所有的字母都小写;2.包名一般情况下,是你的域名倒过来写,
例如 baidu.com package com.baidu;
24. Java 当中的访问权限:(体现面向对象的封装性)
1.public:可以修饰类、成员变量和成员函数,没有任何限制,在同一个包中,或不同包
中的类都可以自由访问,在跨包访问的时候需要 public 权限,当类是 public 的时候,类
名和文件名必须一致。
2.private:可以修饰成员变量和成员函数,只能在本类中使用。
3.default:包级别(默认)访问权限,在不写权限修饰符,就是 default 权限,可以修饰
类、成员变量和成员函数,在同一个包中可以自由访问,在不同包中访问就需要 public
权限。
4.protected:(受保护权限)
public > protected > default > private
25. Import + 包名;导入包。
26. 访问权限与继承
如果子类和父类不在同一个包当中,则子类无法继承到父类当中的 default 权限的成员
变量和成员函数(有问题)。子类可以继承到父类当中的 default 权限的成员变量和成员
函数,但是权限不够,无法使用。
27. protected 权限
首先拥有和 default 权限一样的功能,但是该权限只能修饰成员变量和成员函数,除此
之外,protected 权限允许跨包的继承,【注意】和 public 不同,public 允许包外的任意
访问,但 protected 只允许子类访问父类 protected 的成员变量和成员函数。
28. 接口
定义了接口就是定义了调用对象的标准。
接口的基本语法(一):1.使用 interface 定义 2.接口当中的方法都是抽象方法(抽象类,但
不需要 abstract 定义类)3.接口当中的方法都是 public 权限。
接口的基本语法(二):1.实现接口使用 implements 关键字 2.一个类可以实现多个接口(对
于类的继承来讲,一个类只可以继承一个父类,这里不同)3.一个接口可以继承多个接口
29. 简单静态工厂方法模式
把生成对象的代码(用到 new xxx();),封装在工厂类中。
30. 异常
中断了正常指令流(一个程序从上到下依次的执行,一条条的语句构成指令流)的事件,
异常只出现在程序运行的过程中(意味着在语法上是正确的,跟编译没多大关系)。异
常是一个对象,当程序出现异常的时候,虚拟机会生成一个异常对象,生成异常的类都
是由 JDK 提供的
异常的分类:
剩余11页未读,继续阅读
智慧安全方案
- 粉丝: 3615
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0