javaSE基础
作者:gqk:
javaSE基础部分
1,课程说明: javaSE 说我们学习的重中之重,javaSE 成为java的核心课程和基础课程,javaSE主要目的是为了javaEE服务的,重点划分:
。面向对象:掌握接口的使用
。集合框架:替换数组
。IO编程,学习难点,理解面向对象
。数据库编程(JDBC):通过java语言来操作数据库
等......
2,本章目标:
- JAVA的发展以及环境的搭建;
- JAVA中的主要数据类型以及关键字
- 基本的运算操作符
- 程序的控制语句:判断,循环
- 方法和数组的使用
3,具体内容:
1,认识Java:Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。
2.java的发展史:
3,java语言发展的的几个重大的版本:
j2SE的开发(javaSE):主要提供了开发平台的底层支持,可以开发单机版程序:
j2EE的开发(javaEE):主要是完成各个企业软件的开发,实在javaSE的基础之上开发:
j2ME的开发(JAVA ME):使用java完成嵌入式开发的平台
4,java语言的特点:
。简单
。自动的垃圾收集:在程序的操作中会存在着许多的无用的内存空间,如果处理不当会使系统越来越庞大,在java中可以对无用的空间进行自动的回收,无需开发人员手动回收
。安全性高:java的所有程序都是通过字节码的方式保存,所以安全性相对较高
。多线程:多线程的处理可以使java的处理能力提高很对
。可移植性:可以在不同的操作系统上运行
5,java的操作原理:
对于编程语言来讲,主要是分两种:
。编译型
。解释性:将一段代码在一个平台上进行解释执行。就是存在解释器,所以java语言开发可以在各个平台上使用。
注:一个java程序需要经过编译(由JDK自动提供的命令javac执行),编译之后会形成一个字节码的文件(*.class),之后再进行解释执行(由jdk提供命令 java执行)在在电脑上运行程序
此电脑非彼电脑,不是存在的一台物理电脑,而是一台由软件和硬件模拟的一台虚拟的一台虚拟电脑(虚拟机)
所以.clss文件不认操作系统,认的是操作系统上面的JVM,依靠JVM执行,JVM去适应不同的操作系统;
6,搭建java的开发环境:
下载jdk:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
7,安装jdk安装JVM,下一步就可以
8,安装环境变量:
右击======》计算机======》属性=======》高级属性设置========》环境变量
配置完成之后,以后就可以在命令行方式下使用JDK 所提供的各种命令了。
第一个 java 程序,所有的程序依然以打印不完的“Hello World:
案例:第一个程序 —— Hello.java
public class Hello{ public static void main(String args[]){ System.out.println("Hello World!!!") ; } };
javac Hello.java编译:java Hello执行
文件名称:
在编写java 程序的时候一定要注意,只要是java 程序则一定要放在一个类之中,使用如下的语法定义类:
[public] class 类名称{}
在编写类名称的时候单词的首字母是采用大写的方式进行的,例如:TestHelloJava。
但是,如果一个类使用 public class 和 class声明的话是有区别的。 · public class:文件名称必须与类名称保持一致。
· class:文件名称可以与类名称不一致,执行的时候执行的是生成的*.class 文件。
所以在一个*.java 的文件中, 只能有一个public class声明, 但是允许有多个 class声明,在编译之后会生成不同的*.class 文件
程序理解
在一个java 程序之中,所有的程序都是从主方法中开始执行,在 java 中主方法定义如下:
public static void main(String args[]){}
在主方法后面的“{}”之中编写具体的语句,例如:系统输出:
System.out.println() ;
此语句表示的是在屏幕上进行打印,如果后面有“ln”的话表示输出之后会加一个换行出来,如果没有“ln”表示只 是输出而没有换行。
public class Hello{ public static void main(String args[]){ System.out.println("Hello World!!!") ; System.out.print("Hello World!!!") ; System.out.print("Hello World!!!") ; } };
数据类型(重点):
其中布尔型只有两种取值范围:true 或 false 在数值型中使用最多的就是:byte、int 在浮点型中:float 和 double 都经常使用,double数据类型可以装下全宇宙最大的数字。 每种数据类型都会有其相应的取值范围:
一般在程序中出现了一个整数都属于 int 型数据,如果出现的是小数则都属于 double 型数据。
范例:定义 int /double.float型数据演示
public class Demo01{ public static void main(String args[]){ int x = 10 ; // 定义整型 int y = 20 ; // 定义整型 System.out.println(x + y) ; } };
定义float比较特殊:
public class Demo03{ public static void main(String args[]){ float x = 10.3f ; // 定义小数 float y = (float)20.9 ; // 定义小数 System.out.println(x + y) ; } };
类型转换问题:一般在进行数据类型转换的时候都会采用由小到大的方式进行
double 的范围大于 float,所以可以自动转型,double的范围大于 int 也可以自动转型,但是如果由大到小的方式进行的话, 则必须采用强制的手段,上面的代码就是采用了强制的方式
public class Demo05 { public static void main(String args[]){ double d = 100.9 ; int x = (int)d ; System.out.println(x * x) ; } };
在整型的操作中如果出现了小数位,则肯定会自动抹掉,不会存在。
public class Demo06 { public static void main(String args[]){ System.out.println(10 / 3) ; // 整型在计算前会先向 float 转型 System.out.println(10 / (float)3) ;
} };
字符(char)也是一种常见的操作类型,所有的字符都是使用“"”括起来的一个内容,例如:字母 A就是一个字符。
public class Demo11 { public static void main(String args[]){ char c = 'A' ; // 字符 System.out.println(c) ; } };
但是,在程序中字符和数字往往是可以相互转换的,转换成 UNICODE 码。
public class Demo12 { public static void main(String args[]){ char c = 'A' ; // 字符 int x = c ; // 将字符变为 int 型 System.out.println(x) ; x = x + 1; // 求出 x 的内容并且加一 c = (char) x ; // 将数字变回字符 System.out.println(c) ; } };
在字符的操作中还存在着转义字符,例如:有如下的转移字符: · '\n':表示换行 · '\t':表示TAB · '\\':表示一个“\” · '\"':表示一个" · '\'':表示一个'
对于 boolean 类型,本身只能存在 true 或 false 两种内容
以上都属于一些常用的基本数据类型,但是在这些基本数据类型之上有一种 String类型,表示的是字符串,一般字符 串都是使用“"”括起来的数据,所以 String本身属于一个类,但是此类的使用之后再解释。
演示字符串拼接问题;
标识符及关键字
在 Java 的关键字之中,对于 goto和 const 是两个没有使用到的关键字。
标识符:
可以用来定义方法、类名称、变量名称的一种标记,在 Java 中所有的变量的定义风格如下: ·
由 字 母 、 数 字、下划线、$符号组成,其中不能以数字开头,不能是 Java 中的关键字。 例如:demo、x、$Hello 但是从一般的开发来看,一般的标识符用的最多的就是字母、数字、下划线。
运算符(重点)
程序的主要功能就是计算,所以在Java 中提供了以下的运算符: ·
赋 值 运算:= ·
三 目 运算:布尔表达式 ? 条件满足 : 条不满足 ·
数学运算符:+、-、*、/、% ·
关 系 运算符:>、>=、<、<=、==、!= ·
逻 辑 运算:&&、&、||、|、! ·
简便运算符:++,--
++或--的操作基本上都是在最早的时候,由于内存很昂贵的时候所采用的写法。但是++和--的位置不同,操作的结果 也有所不同
public class Hello{ public static void main(String args[]){ int x = 10 ; System.out.println(x++) ; // 先输出(计算)再自增10 System.out.println(++x); //12 } }
4、总结
1、 Java 实现可移植性的操作原理:*.java *.class JVM
2、 public class 和 class 声明类的区别
3、 path 属性的作用
4、 数据类型的划