p5OO 第五章 面向对象 (基础篇) Notes
(1), Constructor
/ this / String
String str1 = "hello"; 解释 :
是把一个在堆内存空间的使用权给了 str1 对象。
String str2 = "hello";
str1 == str2 是 true
String
字符串的内容不可改变
(2), Java 常用的内存区域
1), 栈内存空间 2), 堆内存空间
3), 全局数据区
4), 全局代码区
(3), static 类属性,
类方法
非 static 声明的方法可以去调用 static
声明的属性或方法。
static 声明的方法不能调用 非 static
声明的属性或方法。
(4), 理解 main 方法 public
static void main(String[] args)
1),
public:表示此方法可以被外部调用
2), static :
表示此方法可以由类名称直接调用
3), void :
主方法是程序的起点,所有不需要任何的返回值
4), main :
系统规定好默认调用的方法名称,执行时默认找到 main 方法名称
5), String args[]
运行时参数,参数传递的形式是 : “java类名称”, 参数1, 参数2, ...
(5),
代码块
1), 普通代码块 : 直接在方法或者语句中定义的代码块
2), 构造块 :
直接写在类中的代码块
3), 静态代码块 : 使用 static
关键字声明的代码块
4), 同步代码块
总结 :
静态代码块优先于主方法执行,而在类中定义的静态代码块会优先于构造块执行,而且不管有多少个对象产生,静态代码块只执行一次。
(6),
私有构造方法 - 单例
private static Singleton
instance = new Singleton();
private
Singleton() {}
public static Singleton
getInstance() {
return
instance;
}
(7),
内部类 http://blog.csdn.net/robbyo/article/details/26233993
1 package com.qunar.basicJava.javase.p5OO;
2
3 /**
4 * Author: [email protected] Date: 14-5-18 21:35
5 * Knowledg : Constructor / this
6 */
7 public class Person {
8 private String name;
9 private int age; // default 0
10
11 public Person() {
12 System.out.println("一个新的 Person 对象被实例化");
13 }
14
15 public Person(String name) {
16 this.name = name; // this 表示当前对象
17 }
18
19 public Person(String name, int age) {
20 this(); // this 调用构造函数
21 this.setName(name);
22 this.setAge(age);
23 }
24
25 public String getName() {
26 return name;
27 }
28
29 public void setName(String name) {
30 this.name = name;
31 }
32
33 public int getAge() {
34 return age;
35 }
36
37 public void setAge(int age) {
38 if (age >= 0 && age < 150) {
39 this.age = age;
40 }
41 }
42
43 public void tell() {
44 System.out.println("姓名 : " + this.getName());
45 System.out.println("年龄 : " + this.getAge());
46 }
47
48 public static void main(String[] args) {
49 Person person = new Person("RoBY", -20); // 如果没写构造函数,则默认有一个无参构造函数,写了则不会存在默认的Constructor。
50 person.tell();
51 }
52 }
53
[Java 05 OO] (基础篇) 《Java开发实战经典》,布布扣,bubuko.com