
Java
Rain722
这个作者很懒,什么都没留下…
展开
-
Java GUI程序设计的初步
在实际应用中,我们见到的许多应用界面都属于GUI图形型用户界面。如:我们点击QQ图标,就会弹出一个QQ登陆界面的对话框。这个QQ图标就可以被称作图形化的用户界面。 其实,用户界面的类型分为两类:Command line UserInterface (命令行用户接口)• 就是常见的Dos命令行操作。• 需要记忆一些常用的命令,操作不直观。举例:• 比如:创建转载 2016-12-02 14:22:48 · 1644 阅读 · 0 评论 -
Java 接口(interface)的用途和好处
一. 对接口的三个疑问很多初学者都大概清楚interface是1个什么, 我们可以定义1个接口, 然后在里面定义一两个常量(static final) 或抽象方法.然后以后写的类就可以实现这个接口, 重写里面的抽象方法. 很多人说接口通常跟多态性一起存在.接口的用法跟抽象类有点类似.但是为何要这么做呢.1.为什么不直接在类里面写对转载 2017-12-29 11:47:08 · 13677 阅读 · 12 评论 -
Java集合Set与HashSet
原文:点击1、Set接口的使用 Set集合里多个对象之间没有明显的顺序。具体详细方法请参考API文档(可见身边随时带上API文档有多重要),基本与Collection方法相同。只是行为不同(Set不允许包含重复元素)。 Set集合不允许重复元素,是因为Set判断两个对象相同不是使用==运算符,而是根据equals方法。即两个对象用equals方法比较返回转载 2017-12-28 14:19:29 · 581 阅读 · 0 评论 -
Java 垃圾回收机制
摘要: Java技术体系中所提倡的 自动内存管理 最终可以归结为自动化地解决了两个问题:给对象分配内存 以及 回收分配给对象的内存,而且这两个问题针对的内存区域就是Java内存模型中的 堆区。关于对象分配内存问题,笔者的博文《JVM 内存模型概述》已经阐述了 如何划分可用空间及其涉及到的线程安全问题,本文将结合垃圾回收策略进一步给出内存分配规则。垃圾回收机制的引入可以有效的防止内存泄转载 2018-01-03 14:28:20 · 403 阅读 · 0 评论 -
java中构造器(Constructor)
构造器是一个创建对象时被自动调用的特殊方法,为的是初始化。构造器的名称应与类的名称一致。 当创建一个个对象时,系统会该对象的属性默认初始化,基本类型属性的值为0(数值类型),false(布尔类型),把所有的引用类型设置为null. 构造器可以改变这种默认的初始化。 构造器的作用:是创建java对象的重要途径,是不是说构造器完全负责创建ja原创 2017-12-24 11:58:48 · 1160 阅读 · 0 评论 -
Java继承中的构造方法
1.子类的构造过程中必须调用基类的构造方法.2.子类可以在自己的构造方法中使用super(argument_list)调用基类的构造方法 使用this(argument_list)调用本类的另外的构造方法如果调用super,必须写在子类构造方法的第一行3.如果子类的构造方法中没用显示地调用基类的构造方法,则系统默认调用基类无参数的构造方法4.如果子类构造方法中既没有显式调原创 2017-11-30 19:46:35 · 366 阅读 · 0 评论 -
凭啥Java运行环境称虚拟机 Python只能称解释器
看到Stackoverflow上有个问题在讨论Java和Python的对比,其中就有人问答为啥Java的运行环境被称之为JVM,而Python的只能叫做Interpreter。这个问题估计想过的人不多,先找维基百科看一下虚拟机的定义。虚拟机的定义有2个,一种是类似Vmware的系统虚拟机,另一种是虚拟机称之为程序虚拟机,诸如JVM,CLR就是最常见到的虚拟机。程序虚拟机也称转载 2016-09-22 16:51:20 · 4942 阅读 · 0 评论 -
Java中抽象类实现多态
不能new出抽象类对象,但可以定义一个抽象类的引用。可以把一个子类对象的地址赋给抽象类的引用,然后通过抽象类的引用调用子类从父类继承过来的方法,即抽象类也可以实现多态假设A是抽象类,B是A的子类且完全实现了A的所有抽象方法,则A aa = new A(); //errorA aa = new B(); //OKabstract class A{ public abstrac原创 2016-08-19 11:48:56 · 3038 阅读 · 0 评论 -
Java(接口)
1.接口中定义的属性必须是public static final的,而接口中的方法则必须是public abstract的,因此这些修饰符可以部分或全部省略。一个类要想实现某接口中的方法时,必须得在方法返回值前加public。2.接口中定义的属性的值在实现类中不能被更改。3.一个类只能实现某个接口,不能继承某个接口。4.一个类可以实现多个接口,但一个类不能继承多个类。5.但接口可以原创 2016-08-19 12:27:45 · 399 阅读 · 0 评论 -
Java中自定义异常的两种处理方法
其中注释掉的部分就是处理方法之一class DivisorIsZeroException extends Exception{ public DivisorIsZeroException(String errorMessage) { super(errorMessage); }}class A{ int divide(int a, int b) throws Diviso原创 2016-08-24 20:13:26 · 1828 阅读 · 0 评论 -
Java中多态注意事项
子类对象可以直接赋值给父类引用,但父类对象任何情况下都不可以直接赋给子类引用,因为子类是父类的一种,但父类不可以是子类的一种,或者讲“子类可以当做父类看待,但父类不可以当做子类看待”,“狗可以当做动物看待,但动物不可以当做狗来看待”。通过父类引用只能访问子类对象从父类继承过来的成员。通过父类引用不能访问子类对象所特有的成员。父类引用永远不可能直接赋给子类引用。原创 2016-08-28 10:01:47 · 569 阅读 · 0 评论 -
Java中Object类的equals方法
所有类都从Object类中继承了equals方法Object类中equals方法源代码如下:public boolean equals(Object obj){ return this == obj;}Object中的equals方法是直接判断this和obj本身的值是否相等,即用来判断调用equals的对象和形参obj所引用的对象是否是同一对象,所谓同一对象就是指内存中同一原创 2016-09-03 20:46:26 · 10368 阅读 · 0 评论 -
Java创建线程的一种方法
class A extends Thread //创建一个继承Thread的类(假定类名为A),并重写Thread中的run方法{ public void run() //重写Thread中的run方法 { while (true) { System.out.println("AAAA"); } }}public class TestThread_1{ p原创 2016-09-04 15:55:31 · 359 阅读 · 0 评论 -
java中线程的串行化简单举例
在多线程程序中,如果在一个线程运行的过程中要用到另一个线程的运行结果,则可以进行线程的串行化处理public final void join() throws InterruptedExceptionclass MyRunner implements Runnable{ public void run() { for(int i = 0; i < 10; i++)原创 2016-09-06 12:18:58 · 1568 阅读 · 1 评论 -
java中synchronized修饰代码块(两种创建线程的方式讲解卖票程序)
格式:synchronized(类对象名 aa){//同步代码块}功能:synchronized(类对象名 aa)的含义是:判断aa是否已经被其他线程所霸占,如果发现已经被其他线程霸占,则当前线程陷入等待中,如果发现aa没有被其他线程霸占,则当前线程霸占住aa对象,并执行同步代码块,在当前线程执行同步代码块时,其他线程将无法再执行同步代码块(因为当前线程已经霸占了a原创 2016-09-06 15:03:57 · 1643 阅读 · 0 评论 -
java线程的同步中notify和wait方法之生产消费实例讲解
aa.wait()将执行aa.wait()的当前线程转入阻塞状态,让出CPU的控制权,释放对aa的锁定this.notify():功能:不是叫醒正在执行this.notify()的当前线程而是叫醒一个现在正在wait this对象的其他线程,如果有多个线程正在wait this对象,通常是叫醒最先wait this对象的线程,但具体是叫醒哪一个,这是由系统调度器控制,程序员原创 2016-09-09 14:20:00 · 591 阅读 · 0 评论 -
Java爬虫入门实例
想copy个爬虫玩玩,结果提到用的jar包是apache的http客户端开源项目---HttpClient就下载了一个版本4.3HttpClient httpclient = new HttpClient();结果遇到这句就给跪了提示Cannot instantiate the type HttpClient,google 了下,在stackover原创 2016-10-20 13:23:53 · 1724 阅读 · 2 评论 -
Java中BufferedInputStream和FileInputStream的小实验
看注释:import java.io.*; public class IO_Test { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub long t1 = System.currentTimeMillis原创 2016-11-09 21:43:24 · 2471 阅读 · 0 评论 -
JAVA多线程学习--哲学家就餐问题
哲学家就餐问题是1965年由Dijkstra提出的一种线程同步的问题。问题描述:一圆桌前坐着5位哲学家,两个人中间有一只筷子,桌子中央有面条。哲学家思考问题,当饿了的时候拿起左右两只筷子吃饭,必须拿到两只筷子才能吃饭。上述问题会产生死锁的情况,当5个哲学家都拿起自己右手边的筷子,准备拿左手边的筷子时产生死锁现象。解决办法: 1、添加一个服务生,只有当经过服务生同意之后才能拿筷子,服务原创 2018-01-25 17:32:21 · 873 阅读 · 0 评论