JAVA重点备忘

7-1.private\protected\public

可见性:

本类\同包其他类或子类\其他包的类或其子类

7-2.静态方法不能使用this及调用非静态方法;

7-3 主方法main是静态方法且只有一个

7-4 静态成员意味着不同的对象中的相同名字的静态成员指向同一个内存快,即不独立;

7-5 ==比较内存地址,.equals()比较内容;

7-6 垃圾:凡是超过作用范围的对象、对象值为NULL;

7-7 可能无法识别不是new操作符创建的对象,这时需要使用protected finalize extends Object(){}方法;

7-8 若内存消耗殆尽,不执行垃圾回收; System.gc()可以强制启动垃圾回收器;

10-1 重写时不能降低方法的修饰权限;

10-2 子类自动调用父类无参构造方法,若要调用父类有参构造方法,使用super.

10-3 判断父类能否向下转型成子类用instanceof

10-4 构造方法名称由类名决定,同名不同方法——方法重载

10-5 abstract-抽象类、interface—接口,接口用于实现那些在抽象类的抽象方法中,部分抽象类的继承类需要而其他的不需要使用的方法;

10-6 接口内任意方法必须是public或abstract;任何定义的字段都是static和final的;


final变量:

11-1 final指向对象不变,对象内值可变,在每次对象实例化时更改,若要值不变添加static,则在装载时被初始化

11-2 空白final可在构造方法里赋值

final方法:

11-3 final方法不能重写,执行效率高,另外private方法隐式的为final方法

11-4 final绝不被覆盖;private final在子类向上转型时可生成一个新方法覆盖见p202

final类:

11-5 不能被继承,类中所有方法隐式设置为final,但成员可不用;

内部类:

11-6 成员内部类:可使用外部类所有成员,与外部类绑定,外不能直接访问内可以引用;

11-7 静态内部类:不能使用外部类的非静态成员


12-1finally块不会执行的4种特殊情况:1)finally内语句发生异常;2)前面的代码中使用System.exit退出了程序;3)程序所在线程死亡;4)关闭CPU

12-2 Error、RuntimeException及其子类可以不使用throws关键字声明要抛出的异常且使编译顺利通过,但在运行时会被系统抛出;

12-3 程序在执行到throw语句时立即终止;throws用于声明自己定义的异常;

12-4 使用try catch时,由于Exception e是所有异常的父类,所以catch(Exception e)必须放在所有同一try下并列catch的最后面


13p227-p254


14-1 集合类(容器):可变长、存放对象的引用

14-2 可变数组ArrayList链表LinkedList   -------------------------------->List---->Java.lang.Object

14-3 hashset(不保证迭代顺序)    treeset(自然递增)----->Set集合(不能包含重复对象)-----↑

14-4 headset[0,a)、subset[a,b)、tailSet[b,)--↑

14-5 map->KV对一一映射k,v。


15-1 InputStream类:所有字节输入流的父类,用于处理字节。 Reader类:字符输入流的抽象父类。因为java里字符unicode编码,双字节。

15.2 输出对应上节分别为OutputStream类和Writer类

15-3 FIle类:用于操作文件、获取文件信息

15-4 FileInputStream、FileOutputStream类:用于从磁盘文件读取或写入信息。只能读取字节(byte),读字符会乱码。

FileReader、FIleWriter类:从文件中读写字符流

15-5 缓存流:增加了内存缓存区,可以执行skip(),mark(),reset()等方法。

BufferedInputStream、BufferedOutputStream:带缓存的InputStream、OutputStream方法。

flush()方法用于将缓存区的数据强制输出完。

BufferedReader、BufferedWriter类:带缓存的InputStreamReader、OutputStreamWriter类。

DataInputStream、DataOutputStream类:允许应用程序以与机器无关的方式从底层输入流中读写基本JAVA数据类型。如含UFT、chars、Bytes三种读写方法。

ZipEntry类:用于产生代表ZIP压缩文件的输入点。读写时必须先用putNextEntry(ZipEntry e)方法移动到输入点。

ZipInputStream、ZipOutputStream类:用于读写ZIp压缩文件

16.1 反射机制:在程序中访问已经装载到JVM中的JAVA对象的描述,实现访问、检测和修改描述JAVA对象本身信息的功能。

通过反射执行其他类方法:method.invoke(example,168);

setAccessible()方法可以取消Java的权限控制检查,提升速度

16.2 用@interface定义Annotation类型而非用Annotaition,这个关键字隐含继承java.lang.annotation.Annotation接口。

Annotation类型定义成员时,可使用如String describe() default "<默认值>; Class type() default void .lass"的方式设置默认值

Annotation潜规则:不能影响程序执行

是接口的一种功能扩展
是一种有功能效果的注释

可以为类、方法等生成特定的java doc
可以在运行时标注类、方法等,用反射的方式达到特殊的流程控制等目的
在编译的时候,可以用注解处理器,对其中的源代码进行处理

通过Annotation类型@target设置适用的程序元素种类(若无则默认为适用所有)

用枚举类ElementType中的枚举常量设置@Targer

通过Annotation类型@Retention设置Annotation的有效范围

用枚举类RetentionPolicy中的枚举常量设置@Retention(若无则默认有效范围为枚举常量Class的有效范围)


17.1枚举类型

枚举取代在接口中放置常量的方式。

优点:参数类型检测、每个枚举类型是一个类,其中的每个成员都是枚举类型的一个实例,且默认被final、public、static修饰。

类型安全、定义紧凑、完美交互、高效运行

17.2泛型

泛型是为了解决向下强制转换类型时不报错报ClassCastException异常的问题。


18.1 线程

声明:类继承Thread类,new xx().start(),重写run。

如果需要继承其他非Thread类,需要使用Runnable接口(因为java不支持多继承)。

建立Runnable对象->Thread对象->.start()->run()

例18.2的class.getResource方法路径参照http://blog.csdn.net/lcj8/article/details/3502849

18.3 生命周期

出生状态->strat()->就绪状态->得到系统资源->运行状态

(->wat()->等待->notify()->就绪状态)

(->sleep()->休眠状态->时间到->就绪状态)

(->发出输入输出请求->阻塞状态->输入输出结束->就绪状态)

(->run()方法执行完毕->死亡状态)

18.5

优先级:1-10,默认为5


19.1端口和套接字

套接字(Socket类)用于将应用程序和端口连接起来

accpet()等待(会进入堵塞状态)->接到链接请求->保存到队列(最大容纳数默认50,超出则拒绝)->新建一个socket

19.2 Tcp:可靠,有序

19.3 UDP:不可靠,无序,有小错误,但较快


20.1数据库

select:语法

SELECT 所选字段列表 FROM 数据表名

WHERE 条件表达式 GROUP BY 字段名 HAVING 条件表达式(指定分组的条件)

ORDER BY 字段名[ASC|DESC](排序,默认升序)

insert:

INSERT INTO 表名[(字段名1,字段名2....)]

VALUES(属性值1,属性值2,...)

update:

UPDATE 数据表名 SET 字段名 = 新的字段值 WHERE 条件表达式

delete:

DELETE FROM 数据表名 WHERE 条件表达式

20.2 JDBC技术:JavaDataBaseConnectivity :指定了统一的访问各种关系型数据库的标准接口  (p359JDBC名称有误,Connectiviry应为Connectivity。)

Connection接口:代表与特定数据库的连接

Statement接口:用于在已经建立连接的基础上向数据库发送SQL语句

PreparedStatement接口:用于动态执行SQL语句

DriverManager类:用于管理数据库中的所有驱动程序

ResultSet接口:类似临时表,用于暂时存放数据库查询操作所获得的结果集

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值