黑马程序员_java入门_面向对象

------- android培训、java培训、期待与您交流! ----------

一。面向对象

个人理解:把一系列动作内化为物体的自身的属性

三个特征:封装,继承,多态

 

二.

class  CarDemo
{
	public static void main(String[] args) 
	{
		Car c=new Car();//生产一个汽车。
		c.color="yellow";//改变汽车的颜色
	}
}
class car
{
	String color="red";
	int num=4;
	void()
	{
		System.out,println(color+"...."+num);
	}
}


成员变量和局部变量

类中的变量叫做成员变量,位于堆内存中,有默认初始值

方法中变量叫做局部变量,栈内存中

 

三.匿名对象

new car();

new car().num=5;只能调用一次,下次调用就不是了

car c=new car();

c=null;使对象变为了垃圾

 

四封装(encapsulation)

概念:把不需要的隐藏起来,提供访问方式

private int age;

一个成员变量通常对于两个访问方式,set和get

私有仅仅是封装的提现形式,之所以提供外部访问方式,是为了提高代码的健壮性

 

五.构造函数

作用:用来初始化对象中的成员变量,给他们一些初值

注意事项

1.       与类名同名

2.       没有返回值类型

3.       不可写return语句

 

当一个对象建立时,如果没有定义构造函数,系统会自动给该类加一个空参数空内容的构造函数,如果定义了就不用

 

六构造代码块

初始所有对象的,与构造函数的区别

构造函数根据传参不同,选择不同的初始函数

而构造代码块是所有的对象都初始化了

 

思考:如果把构造函数私有化了,那么对象就不能创建了,因为无法启动构造函数

 

七this关键字

作用:为了防止重名

this代表本类所属对象

注意事项:1.构造函数之间的调用(this),用this()来表示,不是用函数名

                  2.this语句只能在构造函数第一行

                  3.一般函数不能直接调用构造函数,因为一般函数没有this语句

八static关键字

一种修饰符,修饰成员变量和成员函数

当变量和函数被static修饰后,可以用类名。成员直接调用

注意事项:1.静态比对象先加载,就是不需要具体的实例对象就可以调用

                  2.静态变量被所有对象共享,当一个东西是固定不变的时候,可以定义成静态的

                   3.也就说静态先存在,那么静态不能调用后来才出现的非静态,但后来出现的非静态可以调用前面出现的静态

                  4.静态方法中不能出现this,因为this语句是用来引用对象的,而静态方法优于对象先存在

       

成员变量的存储位置

如果被static修饰那么,存于方法区中

如果没有那么属于实例变量,则存储于堆内存中

 

 

 

 

你可能感兴趣的:(黑马程序员_java入门_面向对象)