`
byandby
  • 浏览: 1688475 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
上代码 package what; import java.util.Arrays; public class Test { public static void main(String[] args) { int[] num = new int[] { 1, 6, 5, 8, 9, 4, 7 }; System.out.println("num数组的长度是:" + num.length); int temp = 0;// 用于两个数进行交换的中间变量 for (int i = 0; i < num.length; i++ ...
  数组被创建后,每个元素自动赋予其数据类型的默认值。另外,还可以在程序中对数组元素显示初始化。 例如: //创建数组 int[] x = new int[5]; //初始化数组x for(int i=0;i<x.length;i++) x[i]=x.length-i; 为了简化编程,也可以按如下方式创建并初始化数组 int[] x=new int[]{5,4,3,2,1}; char[] y=new char[]{'a','b','c','d'}; String[] z={"Monday","Tuesday" ...
死锁   死锁是这样一种情形:多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞,因此程序不可能正常终止。   导致死锁的根源在于不适当地运用“synchronized”关键词来管理线程对特定对象的访问。“synchronized”关键词的作用是,确保在某个时刻只有一个线程被允许执行特定的代码块,因此,被允许执行的线程首先必须拥有对变量或对象的排他性的访问权。当线程访问对象时,线程会给对象加锁,而这个锁导致其它也想访问同一对象的线程被阻塞,直至第一个线程释放它加在对象上的锁。   由于这个原因,在使用“synchronized”关键词时,很容易出现 ...
    计算机通常只有一个CPU,在任意时刻只能一条机器指令,每个线程只有获得CPU的使用权才能执行命令.所谓的多线程的并发运行,其实是指从宏观上看.各个线程轮流或者CPU的使用权,分别执行各自的任务.在可运行池中,会有多个处于就绪状态的线程在等待CPU,JAVA虚拟机的一项任务就是负责线程的调度。线程的调度是指按照特定的机制为多个线程分配CPU使用权。有两种调度模型:分时调度模型和抢占式调度模型。     分时调度模型是指让所有的线程轮流获得cpu的使用权,并且平均分配每个线程占用的CPU的时间片这个也比较好理解。     java虚拟机采用抢占式调度模型,是指优先让可运行池中优先级高的线程 ...
题目:将字符串abcdefg倒序输出 方法一:利用String类的toCharArray(),再倒序输出数组。 1 public class javatest { 2 public static void main(String[] args) { 3 String originalString = "abcdefg"; 4 String resultString = ""; 5 char[] charArray = originalString.toCharArray(); ...
在java中有3个类来负责字符的操作。 1.Character 是进行单个字符操作的, 2.String 对一串字符进行操作。不可变类。 3.StringBuffer 也是对一串字符进行操作,但是可变类。 String: 是对象不是原始类型. 为不可变对象,一旦被创建,就不能修改它的值. 对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去. String 是final类,即不能被继承. StringBuffer: 是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象 它只能通过构造函数来建立, StringBuffer sb = ...
  一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是你对整个宏观商业业务的抽象框架,当代表业务逻辑的高层抽象层结构 合理时,你底层的具体实现需要考虑的就仅仅是一些算法和一些具体的业务实现了。当你需要再开发另一个相近的项目时,你以前的抽象层说不定还可以再次利用 呢,面对对象的设计,复用的重点其实应该是抽象层的复用,而不是具体某一个代码块的复用,是不是一下子感觉自己对复用理解的高度又上升了一层?^_^ 说到了抽象,我就不能不提到曾让我头痛的Java接口和Java抽象类了,这也是本文我想说的重点。 既然面向对象设计的重点在于抽象,那Java接口和Java抽象类就有它存在 ...
      JAVA中的抽象类可以被继承 抽象类里边可以有普通方法,也可以有抽象方法(抽象方法没有方法体,没有大括号{} 普通方法可以有方法体) 如果一个普通的类继承一个抽象类 则它必须重写抽象类里边的抽象方法,抽象类里边的普通方法可以不重写. 如果一个抽象类继承了一个抽象类则不一定非要重写父抽象类里边的方法,不管是普通方法还是抽象方法.    JAVA中接口(interface) 之间可以继承,并且一个接口可以继承多个接口 比如 有分别有三个接口 A  B  C  A接口可以同时继承B接口和C接口 接口里边的方法可以是抽象方法 也可以是普通方法,但是接口里边的方法都没有方法体(没有{}) ...
java 静态代码块 静态方法区别 一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用 比如main方法就必须是静态的 这是程序入口 两者的区别就是:静态代码块是自动执行的; 静态方法是被调用的时候才执行的. 静态方法 (1)在Java里,可以定义一个不需要创建对象的方法,这种方法就是静态方法。要实现这样的效果,只需要在类中定义的方法前加上static关键字。例如:pub ...
Global site tag (gtag.js) - Google Analytics