红魔咖啡馆

头发越掉越多,头发越掉越少

0%

【CS61B】Lec2-Java Basic 1

Java Basic 1

关于类

  • 每个方法(method)都与某些类相关
  • 执行一个类需要主(main)方法,但不是所有类都有主方法

e.g. 创建一个狗类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class Dog {
    public int size;
    public static String binmen = "Canis";
    // 构造函数
    public Dog(int s){
        size = s;
    }
    public void makeNoise(){
        if (size >20){
            System.out.println("bark");
        }
        else if (size <10){
            System.out.println("bark!");
        }
        else{
            System.out.println("bark!!");
        }
    }
    public Dog maxDog(Dog otherDog){
        System.out.println("Being called");
        if (this.size > otherDog.size){
            return this;
        }
        return otherDog;
    }

}

(Dog.java)

1
2
3
4
5
6
7
8
9
10
public class DogLauncher {
    public static void main(String[] args){
        Dog maya = new Dog(9);
        maya.makeNoise();

        Dog hugeDog = new Dog(100);
        Dog largerDog = maya.maxDog(hugeDog);

    }
}

DogLauncher,java文件

(将dog类放入Dog.java文件,主方法放入DogLauncher.java文件,调用主方法时从Dog类调用makeNoise方法)

该Dog类包含如下:

  • 实例变量:定义一个示例的多个属性
  • 构造函数:定义如何实例化一个类
  • 非静态方法(实例方法):由特定实例调用的方法,不需要加static关键字

Array

一种ADT的受限版本

  • 创建数组时需要声明大大小
  • 大小不能更改
  • 所有元素类型需要相同
  • 没有方法

Map

map是键值对的集合,每个键都保证是唯一的