Williams Ding

本文深入探讨了Java编程的基础概念,包括接口、设计模式、包、导入、访问修饰符、instanceof运算符、equals方法以及Java类的特殊方法。同时介绍了如何通过新浪APP获取免费空间资源,提供了一个实现盈利的空间。

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


======================================================
注:本文源代码点此下载
======================================================

java学习笔记3

1.

接口中所声明的方法都是抽象方法。接口中的方法都是public的。

2. 接口中也可以定义成员变量。接口中的成员变量都是public、final、static的。

3. 一个类不能既是final,又是abstract的。因为abstract的主要目的是定义一种约定,让子类去实现这种约定,而final表示该类不能被继承,这样abstract希望该类可以被继承而final明确说明该类不能被继承,两者矛盾。因此一个类不能既是final的,又是abstract的。

4. design pattern(设计模式)。单例模式(singleton):表示一个类只会生成唯一的一个对象。

5. 包(package)。用于将完成不同功能的类分门别类,放在不同的目录(包)下。包的命名规则:将公司域名反转作为包名。www.shengsiyuan.com,com.shengsiyuan(包名),对于包名:每个字母都需要小写。如果定义类的时候没有使用package,那么java就认为我们所定义的类位于默认包里面(default package)。

6. 编译带有package声明的java源文件有两种方式:

a) 直接编译,然后根据类中所定义的包名,逐一手工建立目录结构,最后将生成的class文件放到该目录结构中(很少使用,比较麻烦)。

b) 使用编译参数–d,方式为javac –d . 源文件.java,这样在编译后,编译器会自动帮助我们建立好包所对应的目录结构。

7. 有两个包名,分别是aa.bb.cc与aa.bb.cc.dd,那么我们称后者为前者的子包。

8. 导入(import),将使用package分离的各个类导入回来,让编译器能够找到所需要的类。

9. import的语法:import com.shengsiyuan.packagetest;

10. import com.shengsiyuan.*,表示导入com.shengsiyuan包下面的所有类。

11. import aa.bb.*并不会导入aa.bb.cc包下面的类。这时需要这样写:

import aa.bb.*;

import aa.bb.cc.*;

12. 关于package、import、class的顺序问题:

a) 首先需要定义包(package),可选

b) 接下来使用import进行导入,可选

c) 然后才是class或interface的定义。

13. 如果两个类在同一个包下面,那么则不需要导入,直接使用即可。

14. 访问修饰符(access

modifier)。

1) public(公共的):被public所修饰的属性和方法可以被所有类访问。

2) protected(受保护的):被protected所修饰的属性和方法可以在类内部、相同包以及该类的子类所访问。

3) private(私有的):被private所修饰的属性和方法只能在该类内部使用

4) 默认的(不加任何访问修饰符):在类内部以及相同包下面的类所使用。

15. instanceof:判断某个对象是否是某个类的实例。语法形式:引用名instanceof 类名(接口名),返回一个boolean值。

16. people people = new man();

17. system.out.println(people instanceof people);//结果为true,因为man是people的子类,根据继承,子类就是父类,因此man也可以看作是people的实例。

18. 相等性的比较(==)

1) 对于原生数据类型来说,比较的是左右两边值否相等。

2) 对于引用类型来说,比较左右两边的是否指向同一个象或者边的引用地址是否相同。

19. java.lang.object类, java.lang包在使用的时候无需显式导入,编译由器自动帮助我们导入。

20. api (application

programming interface),应用编程接口。

21. 当打印引用时,实际上会打印出所指对象的tostring()方法的返回值,因为每个类都直接或间地继承自 object,而 object类中定义了tostring() ,因此每个类都有

tostring()这个方法。

22. equals()方法,该定义在 object类当中,因此 java中的每个类都具有该方法, 对于 object类的 equals()方法来说,它是判断调用 equals()方法的引 用与传进来用是否一致,即这两个引指向的同对象。 对于object类的 equals()方 法来说,它等价于 == 。

24. 对于 string类的 equals()方法来说,它是判断当前字符串与传进的内容是否一致。

25. 对于 string对象的相等性判断来说,请使用equals()方法,而不要使用== 。


======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值