![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java 初学
进度条
这个作者很懒,什么都没留下…
展开
-
为何Eclipse编译后的class文件不能在cmd下用java运行?
原因1:存储class的文件的路径中含有空格,这样的classpath中存储的路径只是空格之前的,所以路径不正确,自然jvm运行时就会出现”错误: 找不到或无法加载主类“。原因2:在Eclipse下的java文件一般是在package中,这时javac去编译时就要注意了,需要用javac -d 《生成package的路径》 *.java,这时生成的就是package(文件夹)加上class文件原创 2014-12-21 17:17:03 · 2504 阅读 · 0 评论 -
Java 中的类对象数组的理解
Java中的类对象是类的实例化。假设有类Person, 有代码:Person [] perArr = new Person[3];这句话是申请了三个区域,每个区域存储的不是类对象,而是指向类对象的指针,所以在使用perArr[0]时需要再实例化:perArr[0] = new Person(传入参数); 或者创建类对象数组可以一步完成: Person perArr = {new Perso原创 2014-12-22 17:21:22 · 430 阅读 · 0 评论 -
为何Java不支持泛型数组
java中不支持以T[] arr = new T[10]的形式生成泛型数组。这是为何?1. java引入了泛型机制主要是为了避免ClassCastException的错误的。class Generic {Object info;void setInfo(Object info) ;Object getInfo();}main(){Generic g = new原创 2014-12-25 12:45:29 · 456 阅读 · 0 评论 -
一个TimerTask的管理类
Timer和TimerTask的应用中,总是不知道Timer该何时停止,所以编写了一下的线程管理类,控制线程的定时运行和停止。class ThreadManagement extends TimerTask {private Thread t = null;private Timer timer = null;private boolean bStop = false;publ原创 2014-12-27 11:24:30 · 422 阅读 · 0 评论 -
Collections.max函数申明中的泛型
How do I avoid breaking binary compatibility when I generify an existing type or method? Sometimes a dummy bound does the trick.Occasionally, one must pay attention to the fact that a转载 2015-01-02 09:40:49 · 573 阅读 · 1 评论 -
被覆写的方法不能为private
在java中如果派生类要去覆写父类的方法,那么权限一定要扩大,但是父类中的此方法不能为private类型,否则派生类无法覆写,此时就算派生类中有同名的方法,也不能出现Override的Annotation。原创 2015-01-21 12:01:33 · 592 阅读 · 0 评论 -
Java继承中覆写机制的两个口诀
1. 权限扩大原则:派生类中的同名方法的权限必须大于父类中的同名方法的权限。(public > default > private)2. 就近原则:当有一个方法调用了父类和派生类中的同名方法时,就近选取,即如果此调用方法是派生类中的,则调用派生类中的同名方法,如果此调用方法是父类中的,则你懂的。原创 2014-12-22 17:51:57 · 617 阅读 · 0 评论 -
java反射机制不支持可变参数
class X {public void test(int... args) {}}main() {Method m = X.class.getMethod("test", int[].class);m.invoke(new X(), 1, 2, 3); //这里会报错}由于java的反射机制不支持可变参数,所以Method.invoke方法中传入可变参数则会报错。原创 2015-01-04 15:37:08 · 691 阅读 · 0 评论