JAVA笔记(复习)(新)
概述
重要特点
- Java语言是面向对象的
- Java语言是健壮的。Java的强类型机制,异常处理,垃圾的自动收集等是Java程序健壮性的重要保证
- Java语言是跨平台性的。
- Java语言是解释型的
JDK,JRE和JVM的包含关系
- JDK=JRE+开发工具集
- JRE=JVM+Java SE标准类库(java核心类库)
- 如果只想运行开发好的.class文件,只需要JRE
变量注意事项
- 变量表示内存中的一个存储区域
- 该区域有自己的名称和类型
- 变量必须先声明,后使用,即有顺序
- 该区域的数据可以在同一类型范围内不断发生变化
- 变量在同一个作用域内不能重名
- 变量=变量名+值+数据类型。
数据类型
- JAVA数据类型分为两大类,基本数据类型,引用类型
- 基本数据类型中有8种,数值型【byte,short,int,long,float,double】char,boolean
- 引用类型【类,接口,数组】

整型细节
- Java各整数常量(具体值)默认为int型,声明long型常量需要后面加‘l’或‘L’
- bit:计算机中最小存储单元。byte:计算机中基本存储单元,1byte=8bit。
浮点型细节
- 浮点常量默认为double型,声明float型常量,需要后面加‘f’或‘F’。

字符型细节

字符编码表

类以及类型转换
类的组织形式

自动转换注意类型和细节

强制类型转换

运算符,标识符
逻辑运算符一览
-
规则

-
短路与与逻辑与

-
短路或与逻辑或

-
逻辑运算符规则

三元运算符
-
细节

运算符优先级

进制

标识符命名规则


原码反码补码
-

-
为什么用补码来运算:补码可以把正数和负数连接起来。
位运算符

注意

重要的两个编程思想

程序控制
switch,for,while,do...while
多重循环,
合理运用。
嵌套最好不超过三层
continue,break
数组
概念

使用方式
细节

冒泡排序
特点:

二维数组

生成随机数
-

-

-
radom的nextInt(int n),指的是在0到n(不包括n)之间随机生成一个int型的值
二维数组内存中的存在形式

类与对象
对象存在形式

基本介绍

注意细节

内存分配机制以及流程


成员方法
基本介绍

调用

定义

细节

编写思路

传参机制 parameter(参数)
方法递归调用
-
基本定义

-
重要规则

方法的重载
-
基本介绍

-
细节

可变参数
-
基本概念

-
解读

-
细节

作用域
-
基本使用

-
注意事项


构造方法/构造器
-

-

-
class Person{ String name; int age; //构造器 // 1. 构造器没有返回值,也不能用void // 2. 构造器的名称和类名一致 // 3. (String pName,int pAge)是构造器的形参列表,规则和成员方法一样 public Person(String pName,int pAge){ System.out.println("构造器被调用"); name=pName; age=pAge; } } //小点(.)是对象访问符,例:p1.age -
注意事项和细节


Javap可以反编译
-
对象创建流程分析
- 方法区加载类信息(只会加载一次),在堆中开辟一块该类的空间(分配地址)。
- 根据类里定义的全局变量(属性)将该空间划分出来,默认初始化:初始值int型为0,string型为null。
- 显式初始化:如果属性有赋值初始值,将其赋给该属性。
- 构造器初始化:如有传参,应用相应的构造器进行属性值的更改。string类型从常量区进行加载。
- 将堆中的对象的地址返回给栈中的p(对象的引用/对象名)。

this关键字
-
因为java是在jvm虚拟机上运行的,所以没有办法直接获取真实的地址。折中办法使用hashCode()返回对象的哈希码值,可以近似当作对象的地址。
-

-

-

练习
-
Double是double的包装类。返回值可以为空:null。
-
注意:静态方法可以直接通过类名调用

包
三大作用

包的本质

包的命名

常用的包

注意事项以及细节

访问修饰符
基本介绍

注意事项

面向对象三大特征
封装
-
介绍

-
好处

-
实现步骤

-
如果在构造器中也需要对数据进行判断,可以把get/set跟构造器结合。在构造器内部调用get/set方法。
继承
-
基本介绍以及基本语法

-
细节





-
继承的本质
- 内存布局图

-
继承顺序

-
super关键字
-
基本介绍

-
细节


-
表格

-
演示规则

-
-
方法重写
-
基本介绍

-
细节

-
重写和重载的区别

-
多态
-
基本介绍

-
具体体现
-
向上转型
-
注意事项,细节

-
调用方法规则

-
-
向下转型

-
注意事项

-
动态绑定机制

-
多态应用
-
多态数组

A instanceof B:判断A的运行类型是不是或者B的子类,
-
多态参数

-
-
什么是多态,多态的具体体现有哪些?

(3)编译类型看定义时=号的左边,运行类型看=号的右边。
Object类详解
equals方法
-
==和equals的对比


-
示例表格

-
instanceof

hashCode方法
-
6点小结

toString方法
-
基本介绍

finalize方法
断点调试
注意事项以及介绍

快捷键

示例小项目零钱通
//用于日期格式化
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
//获取当前日期
date = new Date();
-
开发流程

-
改进


-
小项目截图

类变量与类方法
类变量
-
特点以及举例


-
static变量的位置

jdk8以前是在方法区的静态域,jdk8及以后是在堆中的对应的class对象的最后。
-
共识

-
基本介绍

类变量师随着类的加载二创建,所以即使没有创建对象实例也可以访问。
-
使用细节


类方法
-
基本介绍

-
使用场景

-
注意事项

小结

main方法
形式

注意

代码块
基本介绍

好处以及使用方法
-
好处

-
使用方法

使用细节
-
第一部分

-
第二部分

-
第三部分

-
第四部分

单例模式
设计模式介绍

概述

饿汉式
-
具体步骤

-
细节解释

懒汉式
-
步骤

区别

总结

final关键字
基本介绍

细节
-
第一部分

-
第二部分

抽象类
概念



细节
-
第一部分

-
第二部分

-
第三部分

接口
基本介绍

小结


细节
-
第一部分

-
第二部分

实现接口和继承类的区别

接口的多态

内部类
基本介绍

基本语法

分类

局部内部类
- 使用
注意:

匿名内部类
-
本质

-
使用举例


-
细节
-
成员内部类
-
使用




静态内部类
-
特点




内部类小结

枚举类
如何创建枚举类

自定义枚举类小结

enum关键字实现枚举

注意事项

enum常用方法一览表


小结














浙公网安备 33010602011771号