Java基础
处女座的码农
也许当我老了,也一样写代码。不为别的,只为爱好。
展开
-
字符串详解
一.字符串入门1.字符串创建对象的方式:(1) String str = "hello";这种方式创建字符串的时候,Jvm首先会检查字符串常量池中是否存在该字符串的对象,如果已经存在,那么就不会在字符串常量池中再创建了,直接返回该字符串在字符串常量池中的内存地址;如果该字符串在字符串常量池中并不存在,那么就会在字符串常量池中先创建该字符串的对象,然后再返回。(2) new String("hell...原创 2018-02-25 23:15:11 · 413 阅读 · 0 评论 -
访问权限修饰符
1.定义:权限修饰符就是控制被修饰的成员(类、方法、属性)的范围可见性。2.访问权限修饰符有四种,如下图:(1) public:公共的。(2) protected:受保护的。(3) default:缺省的,不加修饰符。(4) private :私有的。注意: 上述顺序是按可见性的大小从大到小进行排序的,在不同包下面只有public 与 protected 可以访问,而且protected必须是在继...原创 2018-02-12 14:02:41 · 852 阅读 · 0 评论 -
包package详解
一.情景需求:1.描述:新建一个文件名Demo1,在里面写一个类文件Demo1,然后再新建一个文件名Demo2,在里面类文件仍然以Demo1命名,先对Demo1进行编译,然后再对Demo2进行编译,再运行Demo1的时候,输出的是Demo2的main方法因为后编译的Demo2也会产生一个Demo1.class这个文件,后编译的就会把前面编译的给覆盖掉。2.实例:(1) Demo1代码如下:clas...原创 2018-02-12 13:02:12 · 2108 阅读 · 0 评论 -
异常详解
一.异常1.定义:Java程序也是会存在某些不正常的情况的,这些不正常的情况我们就统称异常。2.异常体系:--------| Throwable(Throwable类是Java语言中所有错误或异常的超类)------------| Error(错误,错误一般是由Jvm或者是硬件引发的问题,所以我们一般不会通过修改代码去处理错误的)------------| Exception(异常,是需要通过代码...原创 2018-02-09 16:51:48 · 326 阅读 · 0 评论 -
面向对象的三大特征
一.封装:1.概述:我们日常使用的电脑主机,把CPU、内存、主板等都封装到机箱里面去,假如没有机箱的话,这些会全部散落在一起,开机也没有开机按钮,需要我们直接操作跳线才能把电脑开启。一旦操作不慎会让机器损坏。(1)如果我们用机箱把它们封装起来,就不需要这样做了,体现了封装的——安全特性。(2)当我们想要给电脑加内存的时候,我们可以直接把电脑给维修的人,等他加好内存之后。我们拿到手的原创 2018-02-04 19:01:47 · 233 阅读 · 0 评论 -
引用数据类型的强制类型转换
一.引用类型的强制类型转换1.引言实例(1) 需求:多态情况下,不能访问子类特有的成员;(2) 实例:会报错//动物类abstract class Animal{ String name; public Animal(String name){ this.name = name; } public abstract void run();}//老鼠class原创 2018-02-05 12:28:28 · 1411 阅读 · 0 评论 -
接口
1.定义:接口主要是用来拓展功能的,比如USB接口用来连接外置设备;2.接口的定义格式:interface 接口名{}3.接口要注意的事项 :(1) 接口是一个特殊的类。(编译的时候也会生成 接口名.class文件,是类就可以定义变量和函数)(2) 接口的成员变量默认的修饰符为: public static final 。那么也就是说接口中的成员变量都是常量。(必须赋原创 2018-02-03 23:16:34 · 435 阅读 · 0 评论 -
值传递(值交换)
一.基本数据类型的值交换1.需求:定义一个函数交换两个基本类型变量的值;2.实例:import java.util.*;class Demo1{ public static void main(String[] args){ int a = 3; int b = 5; System.out.println("交换之前的值:a = "+a+" b = "+b);原创 2018-02-03 21:40:01 · 948 阅读 · 0 评论 -
jar包详解
1.打jar包需要使用到jdk的开发工具(jar.exe)。2.jar的用法:在cmd命令下输入jar就会有jar的详细用法。3.打jar包的使用格式:jar cvf jar文件的名字 class文件或者是文件夹 4.jar文件的作用:(1) 方便用户快速运行一个项目。(2) 提供工具类以jar包的形式给别人使用。5.打jar包要注意的事项:(1) 一个程序打完了jar包之后 必须要在清单文件上...原创 2018-02-12 18:58:25 · 641 阅读 · 0 评论 -
System类详解
1.System类:系统类,主要用于获取系统的属性数据,没有构造方法。2.System类常用的方法:(1) arraycopy(Object src, int srcPos, Object dest, int destPos, int length); ①参数详解: src:原数组。 srcPos:原数组中的起始位置,也就是从原数组的哪一位开始拷贝。 dest:目标数组。 ...原创 2018-03-06 22:08:49 · 7033 阅读 · 2 评论 -
集合
一.集合的引入1.数组:存储同一种数据类型的集合容器。2.数组的特点:(1) 只能存储同一种数据类型的数据。(2) 一旦初始化,长度固定。 (3) 数组中的元素与元素之间的内存地址是连续的。3.注意:Object类型的数组可以存储任意类型的数据,因为Object类是所有类的一个父类。4.实例:public class Demo1 { public static void main(String[...原创 2018-03-10 23:00:24 · 300 阅读 · 0 评论 -
线程
一.线程概述1.进程:正在执行的程序作为一个进程,进程负责了这个程序的内存空间的划分。2.疑问1:Windows号称是多任务的操作系统,那么Windows是同时运行多个应用程序吗?(1) 从宏观的角度:windows确实是在同时运行多个应用程序。(2) 从微观角度:cpu是做了一个快速切换执行的动作,由于速度太快,所以我们感觉不到在切换而已。3.线程:线程在一个进程中负责了代码的执行,就是进程中一...原创 2018-03-07 23:58:28 · 255 阅读 · 0 评论 -
Object类详解
一.Object类1.Java是面向对象的语言,它的核心思想是:找适合的对象去做适合的事情。那么如何去找适合的对象?2.创建对象的方式:(1) 方式一:自定义类,然后通过自定义的类创建对象。(2) 方式二:sun提供了很多的类给我使用,我们只需要认识这些类,我们就可以通过这些类创建对象了。3.Object类是所有类的终极父类。 任何一个类都继承了Object类。二.Object类常用的方法1.to...原创 2018-02-14 23:32:56 · 227 阅读 · 0 评论 -
内部类详解
一.内部类1.定义:一个类定义在另外一个类的内部,那么该类就称作为内部类。2.内部类的class文件名:经过编译后,内部类的.class文件名为:外部类$内部类. 这样命名的好处:便于区分该class文件是属于哪个外部类的。(比如遇到存在同名内部类的情况)3.内部类的类别:内部类包括成员内部类和局部内部类;4.成员内部类:(1) 定义:成员内部类指的是这个类定义在成员原创 2018-02-07 20:41:41 · 192 阅读 · 0 评论 -
日期类详解
一.Date类1.该类的很多方法已经过时。2.实例:import java.util.Date;public class Demo { public static void main(String[] args) { Date date = new Date(); // 获取当前的系统时间 System.out.println("年份:"+ date.getYear()); }}运...原创 2018-03-07 08:30:11 · 188 阅读 · 0 评论 -
Math类详解
1.Math类:该类是数学类, 主要是提供了很多的数学公式。2.Math类常用的方法:(1) abs(double a):该方法用于获取绝对值;(2) ceil(double a):该方法用于向上取整;(3) floor(double a):该方法用于向下取整;(4) round(float a):该方法用于四舍五入;(5) random():该方法用于产生一个随机数,大于等于 0.0 且小于 1...原创 2018-03-07 08:16:52 · 902 阅读 · 0 评论 -
RunTime类详解
1.该类主要代表了应用程序的运行环境。一个RunTime就代表一个运行环境。2.RunTime类常用的方法:(1) getRuntime():该方法用于返回当前应用程序的运行环境对象。(2) exec(String command):该方法用于根据指定的路径执行对应的可执行文件。①实例:public class Demo7 { public static void main(String[] a...原创 2018-03-06 22:24:05 · 16109 阅读 · 1 评论 -
抽象类
1.为什么要使用抽象类?(1)定义Dog类有名字和颜色属性、移动的方法;(2)定义Fish类有名字和颜色属性、移动的方法;(3)定义它们的父类Animal,抽取它们的共性:名字和颜色属性、移动的方法;①颜色属性可以使用默认值初始化;②移动的方法在父类中如何定义?狗是跑,而鱼是游,可以把父类的方法定义为跑让鱼去继承父类重写跑的方法,那么,鱼怎么确定是否要重写父类的方法?如果不重写原创 2018-02-02 22:57:31 · 156 阅读 · 0 评论 -
final关键字
1.final(最终、修饰符) 2.final关键字的用法:(1)final关键字修饰一个基本类型的变量(包括局部变量和成员变量)时,该变量不能重新赋值,第一次的值为最终的。(2)fianl关键字修饰一个引用类型变量时,该变量不能重新指向新的对象。(3)final关键字修饰一个函数的时候,该函数不能被重写。(4)final关键字修饰一个类的时候,该类不能被继承。(2)原创 2018-02-02 19:12:57 · 1751 阅读 · 0 评论 -
instanceof关键字
1.instanceof关键字的作用:判断一个对象是否属于指定的类别。2.instanceof关键字的使用前提:判断的对象与指定的类别必须要存在继承或者实现的关系。3.instanceof关键字的使用格式:对象 instanceof 类别4.instanceof关键字的作用: 一般我们做强制类型转换之前都会使用该关键字先判断一次,然后再进行转换的。5.实例:class Ani原创 2018-02-02 18:01:27 · 333 阅读 · 0 评论 -
Java基础——变量
一.变量1.定义:变量就是在程序运行过程中其值可以发生变化的量。变量就是一个存储数据的容器。2.变量存在的意义:计算机主要用于处理生活中的数据,由于生活中存在大量的可变数据,那么计算机就必须具备存储可变数据的能力。比如:时间每一秒都在发生变化,根据不同的时间要有不同的处理方式。气象站会根据温度发布天气预报信号。3.原创 2017-04-09 00:32:44 · 262 阅读 · 0 评论 -
Java的关键字、自定义标识符
一.标识符1.定义:在java程序中有些名字是可以自定义的,那么这些自定义的名字我们就称作为自定义的标识符。2.标识符要注意的细节:标识符的组成元素是由 字母(a-zA-Z) 、数字(0-9) 、 下划线(_)、 美元符号($)。标识符不能以数字开头。标识符是严格区分大小写的。标识符的长度是没有长度限制的。标识符的命名一般要有意义(要做到让人见名原创 2017-04-04 21:11:59 · 5068 阅读 · 0 评论 -
Java程序开发体验——Hello World
一.编写第一个Java程序1.bin目录下常用的工具java.exe:启动java虚拟机解释并执行指定的class文件。java.exe的使用格式:java 指定的class文件。javac.exe:启动java编译器对指定的java源文件进行编译。2.流程将Java代码编写到扩展名为.java的文件中。通过javac命令对该java原创 2017-04-04 18:43:07 · 483 阅读 · 0 评论 -
配置Java的环境变量
一、环境的搭建1.JDK简介JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK是整个Java的核心,包括了Java运行环境、Java工具和Java基础类库。2.JDK的安装原创 2017-04-04 12:22:51 · 544 阅读 · 0 评论 -
常见的dos命令
一、人与计算机交互的方式:图形化界面的交互方式:简单、功能强大。通过dos命令的交互方式:需要记忆大量的dos命令,功能比较弱小。二、打开控制台的方式:首先具备一个控制台(命令提示符窗口)用于输入dos命令:方式一:开始-------> 所有程序--------->附件----------->命令提示符。方式二:开始------->运行-------->输入cmd即原创 2017-04-02 12:05:42 · 297 阅读 · 0 评论 -
Java语言概述
一、基础常识:1.计算机的组成:计算机=硬件+软件(没有安装任何软件的计算机称为裸机)。2.硬件:(1)CPU: cpu是计算机中的控制核心和运算核心,负责了解析计算机中的指令、与计算机运算的执行。cpu由运算器、控制器、寄存器、高速缓存及实现他们之间联系的数据、控制及状态的总线构成。cpu是整个系统的核心,也是整个系统最高的执行单元。原创 2017-04-02 13:15:17 · 590 阅读 · 0 评论 -
进制以及进制的转换
一.进制1.定义:进制是一种计数方式,可以用原创 2017-04-08 23:44:11 · 445 阅读 · 0 评论 -
Java基础——常量
一.常量1.定义:常量就是程序在运行过程中其值不能发生改变的量。2.类别:整数常量:所有整数。小数常量:所有小数。布尔常量:布尔常量只有两个值,true(正确)和false(错误)。字符常量:字符常量就是单个字符使用单引号引起来的内容我们称作为字符常量。字符串常量:字符串常量就是使用双引号引起来的内容称作为字符串常量。原创 2017-04-08 22:28:40 · 389 阅读 · 0 评论 -
数据类型转换
一.Java中的八种基本数据类1.整数:byte、short、int、long2.小数:float、double3.字符:char4.布尔:boolean注意:字符串的类型String不是基本数据类型,而是引用数据类型。单引号引起的是字符,双引号引起的是字符串,如果双引号中没有内容是属于一个空的字符串。二.声明变量的方式1.方式一:数据类型 变量名=数据原创 2017-12-30 15:45:31 · 222 阅读 · 0 评论 -
流程控制语句详解
一.语句1.使用分号分隔的代码就称作为一条语句,语句是否结束是以分号为标准的。2.没有写任何代码,只是一个分号的时候,也是一条语句,称作空语句。二.顺序语句1.按照代码顺序从上往下执行所有的代码就是顺序语句。三.if(判断语句)1.if判断语句的格式:(1)格式一:适用于只有一种情况的时候使用if(判断的条件){ 符合条件执行的代码; }(2)格式二原创 2018-01-08 20:28:14 · 396 阅读 · 1 评论 -
方法重写
1.存在的问题:父类的功能无法满足子类的需求。 解决方法:方法重写。2.方法重写的前提:必须要存在继承的关系。3.定义:子父类出现了同名的函数,这个现象我们就称作为方法的重写。4.什么时候要使用方法的重写?当父类的功能无法满足子类的需求时使用方法的重写。5.方法重写要注意的事项:(1)方法重写时, 子类的方法名与形参列表必须和父类一致。(2)方法重写时,子类原创 2018-02-02 16:49:32 · 1379 阅读 · 0 评论 -
this关键字与super关键字详解
一.this关键字1.实例一:(1)需求:使用Java类描述一个动物;(2)实例:class Animal{ String name; //成员变量 String color; public Animal(String n,String c){ name = n; color = c; } public void eat(){ String name =原创 2018-02-02 12:17:03 · 22624 阅读 · 5 评论 -
类和对象
一.面向对象1.万物皆对象:Java是一门面向对象的编程语言,万物皆对象,每个对象都是唯一的。在现实生活中就存在对象与类这两种事物,我们从小的时候就不断接触很多的对象,我们的大脑就会把这些具备相同属性与行为的事物进行分类。而计算机是服务于人类的,为了让计算机更加接近我们的生活,这时候就出现了面向对象的计算机语言。2.类和对象:(1)对象:真实存在的唯一的事物。(2)类:实际上就是对某种类型事物的共原创 2018-01-17 23:29:59 · 150 阅读 · 0 评论 -
成员变量与局部变量的区别
1.声明位置上的区别:(1)成员变量是定义在类内方法外的,成员变量在整个类内都有效。(注意:属性一定是有修饰符的)语法:修饰符 数据类型 变量名;(2)局部变量是定义在方法之内的,局部变量只在其声明的方法内有效。(注意:局部变量是没有访问控制修饰符的,因为局部变量本身就是一个访问权限的设定,只能在局部调用,也就是说局部变量的生命周期在方法体内部只能在方法体内部访问,方法外界是没办法访问这个变量原创 2018-01-17 22:28:42 · 460 阅读 · 0 评论 -
数组与二维数组
一.数组1.定义:数组是存储同一种数据类型数据的集合容器。2.数组的定义格式:(1)格式一:数据类型[ ] 数组名 = new 数据类型[长度];如:int[ ] arr = new int[5];(2)格式二:数据类型[ ] 数组名 = new 数据类型[ ]{元素1,元素2,……};如:int[ ] arr = new int[ ]{3,5,1,7};int[ ] arr = {3原创 2018-01-17 20:29:17 · 440 阅读 · 0 评论 -
Java运算符详解
一.算术运算符(一)+(正数、加法、连接符)class demo8{ public static void main(String[] args){ int age = +30; //+代表正数 System.out.println("age="+age); int a = 12; int b = 23; int c = a+b; //+代表加法求和,将原创 2017-12-31 14:53:40 · 2887 阅读 · 0 评论 -
构造函数与构造代码块
一.构造函数1.构造函数的作用:给对应的对象进行初始化。2.构造函数的定义格式:修饰符 函数名(形式参数){ 函数体;}3.构造函数要注意的细节:(1)构造函数是没有返回值类型的。(2)构造函数的函数名必须要与类名一致。(3)构造函数并不是由我们手动调用的(手动调用指的是如b1.baby();),而是在创建对应的对象时,JVM就会主动调用到对应原创 2018-01-24 23:00:35 · 2331 阅读 · 0 评论 -
main函数详解
1.主函数是静态的;2.主函数是一个特殊的函数,作为程序的入口,可以被JVM识别;3.主函数的定义:(1)public:①公共的,代表权限是最大,在任何情况下都可以访问;②使用public的原因:为了保证让JVM在任何情况下都可以访问到main方法;(2)static:①静态,静态可以让JVM调用main函数的时候更加的方便,不需要通过对象调用;②如果不使用stat原创 2018-01-30 20:26:52 · 3643 阅读 · 0 评论 -
Java基础——注释
一.注释1.定义:注释就是使用文字对程序的说明,注释是写给程序员看的,编译器会忽略注释的内容。2.作用:使用文字对程序说明,提高程序的可读性,使程序的条理更加清晰。通常在程序开头加入作者、时间、版本、要实现的功能等内容注释,方便后来的维护以及程序员的交流。调试程序。3.类别:单行注释原创 2017-04-07 20:18:12 · 300 阅读 · 0 评论