Java学习笔记2
1.面向过程
C语言是非常典型的面向过程语言,以做事情的步骤为准
例如:
把物品装进冰箱
1.打开冰箱
2.装入冰箱
3.关闭冰箱
五子棋的程序
1.开始游戏
2.绘制棋盘
3.白棋先走
4.判断输赢
5.黑棋走
6.判断输赢
2.面向对象(OOP Object Oriented Programming面向对象编程)
例如把物品装进冰箱
分析:
冰箱(属性,行为)
物品(属性,行为)
冰箱的行为有开门关门。
物品的行为是运送。
五子棋:
棋盘(属性,行为)
棋子(属性,行为)
游戏规则
棋子:属性:颜色
行为:走步
棋盘:行为:绘制
游戏规则:行为:判断输赢
3.类
8种基本数据类型:int short。。。
引用数据类型:类、接口、数组
把某些具有相同属性和行为的事物抽象成一类。
狗:
属性:品种、年龄、尺寸
行为:睡觉、吃饭
在java语言中,万物皆对象(在java里面不是所有东西都是对象,8种基本数据类型不是对象,但是八种基本数据类型具有包装类)。
对象
类是一个概念,对象是一个具体的实例
狗是一个类,小王家的那只狗是实例对象。
类的定义
定义类的语法: class 类名{
属性
方法
}
类里面只能有属性和行为
类名:见名知意,每个单词首字母大写。
属性
在类中定义的变量,可以没有初始值,但jvm会分配一个默认值。只有属性才会有默认值。

行为
行为就是方法
public<static> 返回值 方法名(数据类型 变量,数据类型 变量…){
<return>
}
创建类的目的就是创建对象的实例。
语法: 数据类型 变量名 = new 数据类型();
|
//类的概念
class Dog{ //属性: //品种 String type; //颜色 String color; //性别 如果是1则为公 2则为母 int gender;
/** 行为,行为就是方法 */ public void bark() { System.out.println("汪汪汪!"); } public static void play() { System.out.println("咬碎了一直拖鞋"); } /** * 语法: * 创建: 数据类型 变量名 = new 数据类型(); * 调用:变量名.方法 变量名.属性 */ public static void main(String[] args) {
Dog dog1= new Dog(); dog1.bark(); dog1.play(); dog1.color="yellow"; System.out.println(dog1.color); } } |
创建对象的内存结构
当我们运行类的时候会在内存中产生jvm
Jvm有栈、堆、数据共享区
栈:程序运行时基本数据类型和引用数据类型的存储位置
堆:对象存储的位置
数据共享区:存储共享数据的内存区
类中对象的方法是被当前类中所有对象共享的。
内存结构图:
创建一个新的dog:

Dog dog2 = dog;

dog与dog2指向同一个地址,代表同一个对象。
调用方法时,方法内的属性就是调用者的属性:

局部变量和成员变量
凡是定义在方法内和语句块内的变量都是局部变量
只限作用于该方法内
存储在栈中

浙公网安备 33010602011771号