Java基础
普通网友
这个作者很懒,什么都没留下…
展开
-
javaCode的数组和内存图解
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——- 数组 概念: 同一种类型数据的集合,其实数组就是一个容器数组的好处: 可以自动给数组中的元素从0开始编号,方便操作这些元素。格式1: 元素类型[] 数组名=new 元素类型[元素的个数或数组长度]; 示例: int[] arr=new int[5];原创 2015-10-01 23:03:20 · 412 阅读 · 0 评论 -
final关键字
final关键字 1。final可以修饰类,方法,变量。 2。final修饰的类不可以被继承。 3。final修饰的方法不可以被覆盖。 4。final修饰的变量是一个常量,只能被赋值一次。 5。内部类只能访问被final修饰的局部变量。为什么要用final修饰变量,其实在程序如果有一个数据是固定的。 那么直接使用这个数据就可以了,但是这样阅读性差,所以该数据起个名称,而且这个变量名称的原创 2015-12-03 03:03:33 · 287 阅读 · 0 评论 -
抽象类
抽象类 抽象:笼统,模糊,看不懂!不具体 特点: 1.方法只有声明没有实现时,该方法就是抽象方法,需要被abstract修饰。抽象方法必须定义在抽象类中,该类必须也被abstract修饰。 2.抽象类不可以被实例化,为什么?因为调用抽象方法没有意义。 3,抽象类必须有其子类覆盖了所有的抽象方法后,该子类才可以实例化。否则,这个子类还是抽象类。abstract class Demo{原创 2015-12-03 03:22:20 · 314 阅读 · 0 评论 -
接口interface
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-接口 1.格式: interface{} 2.接口中的成员修饰符是固定的。 a:成员常量:public static final b: 成员函数:public abstract c:发现接口中的成员都是public的。 3.接口的出原创 2015-12-04 03:18:15 · 290 阅读 · 0 评论 -
多态
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-多态-概述定义:某一类事物的多种存在形态。 1, 例:动物中猫,狗。 2,猫这个对象对应的类型是猫类型 a: 猫 x=new 猫(); 3,同时猫也是动物中的一种,也可以把猫称为 动物。 a:动物 y=new 猫(); b:动物是猫和狗具体事物中抽取出来的父类型。原创 2015-12-05 03:10:20 · 339 阅读 · 0 评论 -
多线程概述
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-多线程的概述 进程:正在进行中的程序(直译). 线程:就是进程中一个负责程序执行的控制单元(执行路径), 一个进程中可以有多个执行路径,称为多线程 一个进程中至少有一个线程 开启多个线程是为了同时运行多部分代码。 每个线程都有自己运行的内容,这个内容可以称为线程要执行的任务多线程(好处与弊端) 多线程好处原创 2015-12-08 01:58:28 · 290 阅读 · 0 评论 -
多线程的第二种创建方式
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-多线程(线程的状态)CPU的执行资格:可以被cpu处理,在处理队列中排队。CPU的执行权:正在被cpu处理。线程的四种状态 被创建 运行:具备着执行资格,具备着执行权 临时阻塞状态:具备着执行资格,但是不具备执行权,正在等待执行权 冻结:释放执行权,同时释放执行资格。原创 2015-12-11 03:26:01 · 391 阅读 · 0 评论 -
多线程的卖票示例和同步
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-class Ticket extends Thread { private int num=100; public void run(){ while(true){ if(num>0){ try {原创 2015-12-23 03:07:19 · 323 阅读 · 0 评论 -
同步函数
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-/* 需求:储户,两个,每个到银行存钱,每次存100,共存三次。 * */class Bank{ private int sum; //private Object obj=new Object(); public synchronized void add(int num){原创 2015-12-24 02:48:06 · 325 阅读 · 0 评论 -
多线程的死锁和多线程下的单例设计模式
多线程的单例设计模式//饿汉式class Single{ private static final Single s=new Single(); private Single(){} public static Single getInstance(){ return s; }}//懒汉式class Single2{ private st原创 2015-12-24 04:09:51 · 369 阅读 · 0 评论 -
线程间的通讯和生产者和消费者之间的问题
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-/* 线程间通信 多个线程在处理同一资源,但是任务却不同。 * *///资源class Resource{ String name; String sex;}//输入class Input implements Runnable{ Resource r; Inpu原创 2015-12-24 18:55:31 · 315 阅读 · 0 评论 -
多线程1.50的特性
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-jdk1.5以后将同步和锁封装成了对象。 并将操作锁的隐式方法定义到了该对象中。 将隐式动作变成了显示动作//创建一个锁对象Lock lock=new ReentrantLock(); //通过已有的锁获取该锁上的监视器对象Condition con=lock.newCondition();一个原创 2015-12-29 04:58:03 · 309 阅读 · 0 评论 -
集合的概述
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-集合框架-概述集合类 为什么出现集合类? 1.面向对象语言对事物的体现都是以对象的形式, 所以为了方便对多个对象的操作, 就对对象进行存储, 集合就是存储对象最常用的一种方式。2.数组和集合类同时容器,有何不同? a,数组虽然也可以存储对象,但长度原创 2016-01-04 00:27:32 · 317 阅读 · 0 评论 -
多线程的第一种创建方式
多线程(多线程创建的方式一-继承Thread类) 如何创建一个线程呢? 创建线程方式一:继承Thread类。 步骤: 1.定义一个类继承Thread类。 2.覆盖Thread类中的run方法。 3.直接创建Thread的子类对象创建线程。 4.调用start方法开启线程并调用线程的任务run方法执行 创建线程的目的是为了开启一条执行路径, 去运行指定的代码和其他代码实现同时运行。而运行的原创 2015-12-08 03:05:07 · 385 阅读 · 0 评论 -
继承中子父类的实例化过程
class Fu{ int num; Fu(){ num=10; System.out.println(" A fu run"); } Fu(int X){ System.out.println("B fun run"+X); }}class Zi extends Fu{ int num;原创 2015-12-02 03:04:28 · 526 阅读 · 0 评论 -
继承
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-继承 继承的好处。 1,提高了代码的复用性。 2,让类与类产生了关系,给第三个特征提供了前提。class Person{ String name; int age;}class Student extends Person{ //Student 这个类原创 2015-12-02 02:41:22 · 262 阅读 · 0 评论 -
javaCode的数组2
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-数组的两种定义格式1:第一种 格式1: 需要一个容器,但是不明确容器的具体数据。 元素类型[] 数组名=new 元素类型[长度]。 int[] arr=new int[3];2:第二种 格式二:原创 2015-10-02 03:51:52 · 290 阅读 · 0 评论 -
javaCode二维数组
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-二维数组 简单说:二维数组就是,数组里面装着数组。 通俗说:一个箱子里面,装着多个箱子。箱子才装着苹果(元素)。定义格式:int[][] arr=new int[3][2];定义了一个arr的二维数组。 这个arr的二维数组里面有三个一维的数组。 每一个一维数组里面有2个元素。 一维数组的名字ar原创 2015-11-06 03:39:31 · 453 阅读 · 0 评论 -
面向对象
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-面向对象的概述面向对象和面向过程的区别:面向过程举例: * 大象装进冰箱 * * 面向过程 * * 打开冰箱 * 存储大象 * 关上冰箱 * * 对于面向过程思想,强调的是过程(动作)面向对象举例: * 对于面向对象思想,强调的是对象(实体)。 * * 冰箱打开 * 冰箱存储原创 2015-11-07 01:40:57 · 306 阅读 · 0 评论 -
java虚拟机,一些变量的说明
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-深入了解虚拟机 1.虚拟机的主要组成结构 虚拟机主要是由执行引擎和类加载器构成2.虚拟机进程 当我们执行某个类的main方法时,就会开启一个jvm 的进程, jvm的进程可以有多个,jvm进程是不能共享的, 一个应用程序就对应着一个独立的jvm进程,进程和进程之间是相互不干扰的3.虚原创 2015-11-24 17:59:31 · 380 阅读 · 0 评论 -
局部变量和成员变量同名的时候
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——- class Car{ int num;//全局变量 //全局变量也叫成员变量,又可以分为类变量(也叫静态变量)和实例变量 String color="red"; void run(){ int num=9;//局部变量 System.out.println(原创 2015-11-25 01:02:07 · 2290 阅读 · 0 评论 -
增强代码的复用性和匿名对象
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-class Car{ int num; String color; public void run(){ System.out.println(num+"...."+color); }}class Demo{ public static void ma原创 2015-11-29 16:44:11 · 432 阅读 · 0 评论 -
基本数据类型和引用数据类型的内存传递的变化
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-基本数据类型的传递class Demo{ public static void main(String[] args) { int x=3; show(3); System.out.println("x="+x);//输出的结果是原创 2015-11-29 17:21:42 · 484 阅读 · 0 评论 -
封装
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——- 封装(Encapsulation) 1.封装:是指隐藏对象的属性和实现细节, 仅对外提供公共访问方式 2.好处: a.将变化隔离 b.便于使用 c.提高重用性 d.提高安全性 3.封装原则: a.将原创 2015-11-29 17:43:28 · 370 阅读 · 0 评论 -
构造函数
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-构造函数的概述: 特点: 1:函数名与类名相同 2:不用定义返回值类型 3:没有具体的返回值 作用: 给对象进行初始化。 注意: 1:默认构造函数的特点 2:多个构造函数是以重载的形式存在的是public class Person{原创 2015-11-29 19:00:04 · 391 阅读 · 0 评论 -
this关键字的介绍
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-this 关键字 特点:this代表其所在函数所属对象的引用 换言之:this 代表本类对象的引用。 什么时候使用this关键字呢? 当在函数内需要用到调用函数的对象时,就用this。使用场景 当成员变量和局部变量重名,可以用关键字this来区分 this:代表对象,代表哪个对象呢?当前对象原创 2015-11-30 03:11:42 · 493 阅读 · 0 评论 -
static关键字和构造代码块
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-static关键字1.static(静态)关键字: a:用于修饰成员(成员变量和成员函数)2.被修饰后的成员具备以下特点: a:随着类的加载而加载 b:优先于对象存在 c:被所有对象所共享 d:可以直接被类名调用 3.使用注意原创 2015-11-30 22:20:40 · 289 阅读 · 0 评论 -
单例设计模式
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-单例设计模式 设计模式:对问题行之有效的解决方式,其实就是一种思想。 1,单例设计模式. 解决的问题:就是可以保证一个类在内存中的对象唯一性。比如对于多个程序使用同一个配置信息对象时,就需要保证该对象的唯一性。如何保证对象唯一性呢?1,不允许其他程序用new创建该类对象2,在该类创建一个原创 2015-12-01 02:52:10 · 339 阅读 · 0 评论 -
集合中List和Set
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-Collection接口有两个子接口: List(列表),Set(集) List:可存放重复元素,元素存取是有序的。 Set:不可以存放重复元素,元素存取是无序 的List集合中常用的类Vector:线程安全,但速度慢,已被 ArrayList 替代。ArrayList:线程不安全,查询速度快。Linke原创 2016-01-04 01:09:13 · 356 阅读 · 0 评论 -
Vector、LinkedList、ArrayList集合
Vector集合Vector:内部是数据数据结构,是同步的。增删,查询都很慢public class Collection12_1 { public static void main(String[] args) { Vector v=new Vector(); v.addElement("abc1"); v.addElement("abc2"原创 2016-01-04 01:39:33 · 306 阅读 · 0 评论 -
IO流(RandomAccessFile)
RandomAccessFile1:随机访问文件,自身具备读写的方法2:通过skipBytes(int x),seek(int x)来达到随机访问。RandomAccessFile-写入 public class Io59_1 { public static void main(String[] args) throws IOException { /*原创 2016-01-06 05:52:04 · 231 阅读 · 0 评论 -
IO流中的其他对象
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-管道流-Piped Stream public class Io62_1 { public static void main(String[] args) throws IOException { PipedInputStream input=new PipedInputStre原创 2016-01-06 18:32:29 · 256 阅读 · 0 评论 -
反射的概述和获取class对象的三种方式
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-java反射机制是在运行状态中,对于任意一个类(class文件),都能够知道这个类的所有属性和方法; 对于任意一个对象,都能够调用它的任意一个方法和属性; 这种动态获取的信息以及动态调用对象的方法的功能称之为java语言的反射机制动态获取类中的信息,就是java反射 可以理解为对类的解剖。当程序员原创 2016-01-06 23:41:20 · 330 阅读 · 0 评论 -
编码
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-编码表编码表的由来1.计算机智能识别二进制数据,早期由来是电信号 2.为了方便应用计算机,让它可以识别各个 国家的文字。 3.就将各个国家的文字用数字来表示,并 一一对应,形成一张表 4.这就是编码表常见的编码表 1.ASCLL:美国标准信息交换码。原创 2016-01-06 22:31:34 · 289 阅读 · 0 评论 -
反射的应用
———– android培训、 java培训、java学习型技术博客、期待与您交流! ——-public class Person { private int age; private String name; public Person() { super(); System.out.println("person run"); }原创 2016-01-07 00:08:28 · 290 阅读 · 0 评论 -
Android_组合式控件_自定义属性
组合式控件概念:多个零散的控件当成一个控件来看 应用的场景:当我们的应用程序有几个页面,都是出现了相同的布局,这个时候,我们也不想把他抽取成为样式,就可以使用组合式控件来解决问题了.步骤:抽取共用的控件代码,到一个布局里面 定义一个类,这个类继承有规定的,布局的根标签是什么类型,那么就必须继承什么类型导入布局,把布局加入到容器里面使用自定义的组合式控件举一个使用组合式控件的例子:第一步:原创 2016-03-12 01:08:18 · 856 阅读 · 0 评论 -
使用TCP协议传输信息演示
演示1//客户端class Client{ public static void main(String[] args){ //客户端发数据到服务端 /* * Tcp传输,客户端建立的过程。 * 1,创建tcp客户端socket服务。使用的是Socket对象。 * 建议该对象一创建就明确目的地原创 2016-01-11 02:44:38 · 577 阅读 · 0 评论 -
UDP传输演示
演示1class sendDemo{ public static void main(String[] args){ /* * 创建UDP的传输发送端 * * 1:建立UDP的socket服务 * * 2:把要发送的数据,封装成数据包 * *原创 2016-01-10 23:28:14 · 358 阅读 · 0 评论 -
网络编程通讯的要素
网络通讯要素IP地址:InetAddress • 网络中设备的标识 • 不易记忆,可用主机名 • 本地回环地址:127.0.0.1 主机名:localhost端口号 • 用于标识进程的逻辑地址,不同进程的标识 • 有效端口:0~65535,其中0~1024系统使用或保留端口。传输协议 • 通讯的规则 • 常见协议:TCP,UDTCP和UDPUDP • 将数据及源和目的封装成数据包中,不需要建立连接原创 2016-01-08 17:56:19 · 347 阅读 · 0 评论 -
网络编程的概述
网络模型OSI参考模型TCP/IP参考模型模型图解 关于各层的描述一份数据传送的在每个层里面的变化从A端把数据发送到B端。 首先在A端。 第一步:应用层接收数据(你的程序是QQ还是其他什么之类的应用程序呢?),给数据装上标识。 第二步:在表示层对数据进行解释,你发送的数据,是图片,还是音乐,还是文字什么的,甚至还可以进行加密。然后再装上标识。 第三步:在会话层,你的数据,要传输给谁的呢原创 2016-01-08 04:04:40 · 265 阅读 · 0 评论