思维导图

详细
访问控制修饰符
在创建 类 和 方法/属性 时 会用到访问控制修饰符。
| 修饰符 | 同类 | 同包 | 不同包 |
|---|---|---|---|
| public | 有权限 | 有权限 | 有权限 |
| protected | 有权限 | 有权限 | 无权限 |
| 默认 | 有权限 | 有权限 | 无权限 |
| private | 有权限 | 无权限 | 无权限 |
setter、getter规范
代码例子: ```java public class User{ //定义了一个关于名称的实例变量 private String name;
/**
- 获取 name 的值 */ public String getName(){ return this.name; }
/**
- 设置 name 的值 */ public void setName(String name){ this.name = name; }
}
- 变量作用域如下图, **this** 关键字就是类内部的实例变量,通过 **this** 可以轻松调用实例内的方法和成员。<br />在方法参数的变量名和成员变量名同名了,但是由于在**不同的作用域**,所以不会有影响。<br /><a name="j6n4Y"></a>#### static的基本用法1. 声明静态变量```javapublic static final String USER_KEY = "m_key";/*** 手机验证码 key*/public static final String SMS_KEY = "m_sms_key";
- 声明静态方法 ```java //main方法 public static void main(String[] args){
}
3. 声明静态代码块(可以在其中执行代码并调用static变量)```java// 声明一个静态代码块,用于初始化学校数据static{School school = new School();school.setId("1");school.setName("北京大学");SCHOOLS.add(school);school = new School();school.setId("2");school.setName("清华大学");SCHOOLS.add(school);}
父类对子类实例化
//Animal是父类,Dog是子类Animal d = new Dog();//相当于Dog d = new Dog();
子类构造函数
如果子类中不具备父类的构造函数就会报错。
//父类public class CustomFile{// 存储文件路径的变量public String filePath;// 存储文件后缀变量,通过后缀来区分文件类型public String ext;// 声明一个构造函数,接受文件路径public CustomFile(String filePath){//给类变量 filePath 赋值//this代表的是当前类的实例this.filePath = filePath;}}
//子类继承父类public class JavaFile extends CustomFile{// 声明一个构造函数public JavaFile(String filePath){super(filePath);//需要用super关键字}}
如果需要定义新的构造函数,如下
public class JavaFile extends CustomFile{private String packageName;// 声明一个构造函数public JavaFile(String filePath,String packageName){super(filePath);this.packageName = packageName;}
Map的遍历
一般要先得到key:value格式的集合(entrySet),例子如下:
//key是Integer类型,value是String类型for (Map.Entry<Integer,String> entry : map.entrySet()){System.out.println("Key = " + entry.getKey() +", Value = " + entry.getValue());}
