day07-----------面向对象(传智视频)

/*
	成员变量和局部变量的区别?
		A:在类中的位置不一样
			成员变量:在类中方法外
			局部变量:在方法定义中或者方法声明上
		B:在内存中的位置不一样
			成员变量:在堆内存
			局部变量:在栈内存
		C:生命周期不一样
			成员变量:随着对象的建立而存在,随着对象的消失而消失
			局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
		D:初始化值不一样
			成员变量:有默认初始化值
			局部变量:没有默认初始化值,必须定义,赋值,而后才能使用。
			
		注意事项:
			局部变量名称能够和成员变量名称同样,在方法中使用的时候,采用的是就近原则。
*/

/*
	匿名对象:就是没有名字的对象。
	
	匿名对象的应用场景:
		A:调用方法,仅仅只调用一次的时候。
			注意:调用屡次的时候,不适合。
			那么,这种匿名调用有什么好处吗?
				有,匿名对象调用完毕就是垃圾。能够被垃圾回收器回收。
		B:匿名对象能够做为实际参数传递
*/

private:私有的。能够修饰成员变量和成员方法。
	注意:被private修饰的成员只能在本类中访问。
	
this:是当前类的对象引用。简单的记,它就表明当前类的一个对象。
	注意:谁调用这个方法,在该方法内部的this就表明谁。
		
	this的场景:
		解决局部变量隐藏成员变量

/*
	咱们一直在使用构造方法,可是,咱们确没有定义构造方法,用的是哪里来的呢?
	
	构造方法的注意事项:
		A:若是咱们没有给出构造方法,系统将自动提供一个无参构造方法。
		B:若是咱们给出了构造方法,系统将再也不提供默认的无参构造方法。
		注意:这个时候,若是咱们还想使用无参构造方法,就必须本身给出。建议永远本身给出无参构造方法
		
	给成员变量赋值有两种方式:
		A:setXxx()
		B:构造方法
*/

/*
	static关键字注意事项
		A:在静态方法中是没有this关键字的
			如何理解呢?
				静态是随着类的加载而加载,this是随着对象的建立而存在。
				静态比对象先存在。
		B:静态方法只能访问静态的成员变量和静态的成员方法
				静态方法:
					成员变量:只能访问静态变量
					成员方法:只能访问静态成员方法
				非静态方法:
					成员变量:能够是静态的,也能够是非静态的
					成员方法:但是是静态的成员方法,也能够是非静态的成员方法。
			简单记:
				静态只能访问静态。
*/
/*
    main方法的格式讲解:
	public static void main(String[] args) {...}
		
	public:公共的,访问权限是最大的。因为main方法是被jvm调用,因此权限要够大。
	static:静态的,不须要建立对象,经过类名就能够。方便jvm的调用。
	void:由于咱们曾经说过,方法的返回值是返回给调用者,而main方法是被jvm调用。你返回内容给jvm没有意义。
		main:是一个常见的方法入口。我见过的语言都是以main做为入口。
		String[] args:这是一个字符串数组。值去哪里了?
			这个东西到底有什么用啊?怎么给值啊?
				这个东西早期是为了接收键盘录入的数据的。
				格式是:
					java MainDemo hello world java
*/
相关文章
相关标签/搜索