Java 学习笔记

博客介绍了Java中实现线程的两种方法,阐述了方法参数的使用情况、源文件命名规则等类相关知识,对比了ArrayList和Vector,还提及Java事件模型、多线程与回调实现方式。此外,说明了开发GUI时AWT和Swing的使用注意,以及Oracle数据库的JDBC访问方法。

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

两种实现线程的方法
1.使用Runnable接口
  可以将CPU、代码和数据分开,形成清晰的模型,还可以从其他类继承;保持程序风格的一致性。
2.直接从Thread类继承
  不能从其他类继承;编写简单,可以直接操纵线程,无需使用Thread.currentThread()。
 
利用方法参数的几种情况
1.方法不能修改基本类型的参数(数字或布尔值)
2.方法可以改变对象参数的状态
3.方法不能使一个对象参数指向一个新的对象
 
源文件的名字必须与Public类的名字相同。在一个源文件中只能有一个公开类,但可以含有任意数量的非公开类。

构造器和其他方法一个重要的不同是:
构造器只能和new运算符一起使用。不能把构造器应用于一个已存在的对象来重新设置其实例字段。

复制构造器可使不同的对象具有相同的数据,但其指向并非同一个对象。

一个抽象方法可以被认为是一个轮廓或是一个约定,它标明其子类必须实现的方法,但把具体的实现留给子类来完成。

ArrayList类效率较Vector高,可代替之。

可使用定义在org.oma.CORBA包中的一个来写一个改变数字参数的方法。

在使用C++中函数指针的任何场合都应该考虑使用Java中的接口。

Java事件模型是强类型的:事件只能被发送给能够处理它的对象,这在编译器的监视之内。

Java利用多态或反射来实现多线程与回调
C#利用多态或反射或委托(delegate)来实现多线程与回调

在Java和C#中,堆中分配的内存由垃圾收集机制释放,而栈中分配的内存则在代码块执行完毕后由出栈操作释放。


选用AWT或SWING来开发GUI时最好不要同时使用两者
1.Swing组件大部分为lightweight而AWT组件一律为heavyweight两者混用可能造成Z-order错乱
2.造成Swing最佳化无用武之地,使速度变慢。

与数组索引不同,数据库的列号码是从1开始的。

字符串是不可改变的:
一旦创建了一个字符串对象,那么该字符串所代表的文本就不能改变了,如果需要修改,字符串中任意位置上的字符,可以使用java.lang.StringBuffer

JDBC的thin和oci是Oracle提供的两套Java访问Oracle数据库的方法
thin就是纯粹用Java完成访问数据库的所有方法,优点是不用安装客户端
oci就是使用Java来调用本机的Oracle客户端然后再访问数据库,优点是速度快但是需要安装和配置数据库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值