一、类与对象引出

类与对象.png

图片.png
代码示例

代码.png

代码.png

运行结果.png

区别与联系.png
对象内存布局

图片.png
属性
属性=成员变量=field字段(如:Cat当中的name/age/color)

图片.png

创建对象.png

访问属性.png
对象的分配机制

代码.png

分析.png

图片.png

图片.png
二、成员方法

图片.png

图片.png

图片.png

Method01(1).png

Method01(2).png
Method(03)
...
public class Method01{
public static void main(String[] args) {
Person p1 = new Person();
p1.cal02(10);//调用cal02方法
//调用getSum方法,同时将10赋给num1,15赋给num2
//将方法getSum的返回值的 赋值给变量returnRes;
int returnRes = p1.getSum(10,15);
System.out.println("returnRes的结果="+returnRes);
}
}
class Person{
String name;
int age;
//cal02(int n)形参列表 当前有一个形参 n ,可以接收用户输入
public void cal02(int n){
int sum=0;
for(int i=1;i<=n;i++){
sum+=i;
}
System.out.println("cal02 计算结果="+sum);
}
//分析:
//1.public 表示方法是公开的
//2.int 表示方法执行后,返回一个 int值
//3.getSum 表示方法名
//4.(int n,int m) 表示形参列表,当中有两个形参n,m 可以接收用户传入的两个数
//5.return sum;表示可以将sum 的值,返回
public int getSum(int num1,int num2){
int res = num1 + num2;
return res;
}
}
...

图片.png
练习
...
public class Method02{
public static void main(String[] args) {
//多次打印输出一个二维数组,使用方法
int[][] map = {{1,2,3},{4,5,6},{7,8,9}};
//1.new MyTools();创建一个对象,或者说MyTools类的实例化
//2.tools 表示对象的名称
MyTools tools = new MyTools();
tools.print2Arr(map);
}
}
class MyTools{
//创建一个方法
public void print2Arr(int[][] map){
for(int i = 0;i<map.length;i++){
for(int j = 0;j<map[i].length;j++){
System.out.print(map[i][j]+" ");
}
System.out.println(" ");
}
}
}
...