黑马程序员——Java基础学习笔记(二)

本文介绍了Java面向对象的基本概念,包括继承、封装、多态等核心特性,并详细解释了构造函数、this关键字、静态成员及静态方法的应用场景和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


13. 面向对象三个特征:继承,封装,多态;

14. 匿名对象使用:(1)当对对象的方法之调用一次时,可以用匿名对象来完成,这样写比较简化,如果对一个对象进行多个成员调用,必须给这个对象起个名字;

(2)可以将匿名对象作为实际参数进行传递;

15.成员变量位于堆内存中,会默认初始化,而局部变量位于栈空间中,没有初始化值

16. 构造函数:(1)函数名与类名相同(2)不用定义返回值类型(3)不可以写return语句;

17.构造代码块:给对象进行初始化,对象一建立就运行,而且优先于构造函数执行。和构造函数的区别:构造代码块是给所有对象初始化;而构造函数是给对应对象初始化;

例:

class Person
{
	{
		System.out.println(“构造代码块”);
}
}

18. this的应用:当定义类中功能时,该函数内部要用到调用该函数的对象时,这时用this来表示这个对象;但凡本类功能内部使用了本类对象,都用this表示;

19. this语句:用于构造函数之间进行互相调用,且this语句只能定义在构造函数的第一行,因为初始化要先执行,如:

class Person
{
	private String name;
	private int age;
	Person(String name)
	{
		this.name = name;
}
Person(String name, int age)
{
	this(name);
	this.age = age;
}
}

20. 实例变量和类变量的区别:(1)存放位置:类变量随着类的加载而存在于方法区中,实例变量随着对象的建立而存在于堆内存中;(2)生命周期:类变量生命周期最长,随着类的消失而消失,实例变量生命周期随着对象的消失而消失;

21. 静态使用注意事项:(1)静态方法只能访问静态成员;非静态方法既可以访问静态也可以访问非静态;(2)静态方法中不可以定义this,super关键字,因为静态优先于对象存在,所以静态方法中不可以出现this;(3)主函数是静态的;

22. 静态利弊:(1)利:对对象的共享数据进行单独空间的存储,节省空间,没有必要每一个对象中都存储一份,可以直接被类名调用;(2)弊:生命周期过长,访问出现局限性(静态虽好,只能访问静态);

23. main不是关键字,但是是一个特殊的单词,可以被jvm识别;

24. 主函数格式是固定的,jvm所能识别的程序入口只能是

public static void main(Stirng [] args);

25.主函数是由虚拟机调用的;调用时传入的是newString[0];

26.什么时候使用静态(1)因为静态修饰的内容有成员变量和函数,当对象中出现共享数据时,该数据被静态所修饰。对象中的特有数据要定义成非静态存在于堆内存中;

27. 什么时候定义静态函数:当功能内部没有访问到非静态数据(对象的特有数据),那么该功能可以定义成静态的;

28. 为了避免对象创建,生成无用的位于堆内存中的对象,可以将构造方法私有化;

29. 静态代码块:随着类的加载而执行,只执行一次,用于给类进行初始化,并优先于主函数,如:

class StaticCode
{
	static 
{
	System.out.println(“a”);
}
}
class StaticCodeDemo
{
	static 
{
	System.out.println(“b”);
}
public static void main(String[] args)
{
	new StaticCode();
	new StaticCode();
	System.out.println(“over”);
}
static 
{
	System.out.println(“c”);
}
}

代码运行后输出: b c a over 在主函数中两次创建StaticCode对象但是只执行其类中的静态代码块一次;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值