现在的位置: 首页 > 综合 > 正文

java笔记1

2018年10月20日 ⁄ 综合 ⁄ 共 4311字 ⁄ 字号 评论关闭

JAVA基础

一、java工具

JDK

java开发工具包,sun官方提供的Java下载安装包,份操作系统和版本

JRE

Java运行环境,下载安装JDK即可得到JRE,需要陪着环境变量

JVM

Java虚拟机,是java的核心功能的提供者,java程序必须运行在JVM中

GC

内存垃圾的回收机制,由JVM提供

IDE

集成开发环境,是大规模的商业开发工具,主流包括:

Eclipse/jbuildemmr/netbeans

API

应用接口程序,在java中特指sun官方类库的说明文档

 

二、Eclipse安装

JAVA_HOME

该环境变量的值就是Java所在的目录,一些Java版的软件和一些Java的工具(Eclipse/NetBeans/Tomcat)需要要到该变量,设置PATH和CLASSPATH的时候,也可以使用该变量以方便设置

PATH

1.作用是指定命令搜索路径,在shell下面执行命令是,它会到PATH变量所指定的路径中查找看是否能够找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如:javac/java/javadoc等,设置好PATH变量后,就可以在任何目录下执行javac/java/等工具了。

CLASSPATH: .

1.也制定一个路径列表,用于搜索Java编译或者运行时需要用到的类。在CLASSPATH列表中除了可以包含路径外,还可以包含.jar文件。Java查找类是会把这个jar文件当作一个目录进行查找。通常,我们需要把JDK安装路径下的jre\lib\rt,jar(Linux;jre/lib/rt,jar)包含在CLASSPATH中。

2.直接在CLASSPATH中添加当前路径:

3.rt.jar可以通过系统关系自动找到。

 

JAVA_HOME: jdk的安装目录

PATH: JDK安装目录下面的bin目录

 

三、java执行原理:

MyFirst.java----源文件,不能在jvm上面运行

  |

javac MyFirst.java

  |

MyFirst.class---字节码文件,jvm上面运行的都是字节码文件

  |

java MyFirst,启动呈现,执行相应的代码

 

1.一个java文件中可以包含多个class对象,编译时候有几个class对象就生成几个字节码文件

2.一个java文件中只有一个public修饰的类名。

3..java文件编译以后,一个class对应一个class文件。

4.main函数是整个程序的执行入口,必须是静态公开的。

 

四、常见术语

Main方法

Public static void main(String[] args){ }

//static静态的,void表示方法(任何方法都有返回值),main是方法名

 

JAVA命令执行所做的东西(要用到PATH的环境变量)

1.      启动jvm

2.      找到字节码文件,要用到CLASSPATH的环境变量

3.      装载该字节码文件(加载到内存中)

4.      找到主方法,main方法,执行代码:“ ”字符串值,例如:System.out.println()向控制台输出,括号里是输出的内容(不加ln代表不换行,+代表字符串的连接)。

类里面可以写方法main,可以写属性,一般来说类与类、方法与方法之间是并列的。

刚开始写代码时要注意代码的格式问题,有利于以后代码的维护及可观性。

 

对象:

Java中一切都是对象;是对对象的抽象描述

例如:

属性与方法

Public class Person{

   Intheight

   Intsex

   Intage

Public void talk(){System.out.println(“hello”);}//说话

Public void work()//工作

 

Package包

1.      作用,java程序很庞大的话会有很多类文件,为了分类存放,那么就把相同类型的类文件放在同一个包

2.      语法:

Package 包名

正文

3.      报名规范:

公司的URL,

项目的简称,

项目的模块(如:com.tarena,abs,model),

好处:保证包的唯一性

 

编译格式:

Javac –d. xxx.java

启动格式:

Java 包名.文件名

 

Package com.tarena.teach;

Public class MyFirst{

     Publicstatic void main(String[] args){

         String name=”GaoYu”;

         Int age=27;

         System.out.println(“My name is “+name);

         System.out.println(“I’m “+age+” years old.”);

}

}

Javac –d . MyFirst.java

Java com.tarena.teach.MyFirst

 

Java中的注释

1.      单行注释://

2.      多行注释:/*

           *

*/

3.  文档注释:/**

               *

              */

支持javadoc命令

 

 

Java中 的基础包

Java.lang语言包

Java.awt/javax.swing/java.awt.event图形开发(GUI)包

Java.applet JAVA的applet小程序包

Java.io输入输出流包

Java.net网络包

Java.util工具包

小代码:

Public class Login{

   Publicstatic void main(String[] args){

       String name;//用户名

       String password;//用户密码

       Scanner s=newScanner(System.in);

       System.out.println(“用户名:”);

       Name=s.next();//通过获取控制台的输入信息初始化name值

       System.out.println(“密码:”);

       Password=s.next();//初始化密码

       If (“pro”.equals(name)){

            If (“1234” .equals(password)){

               System.out.println(“欢迎登录!”);

              }else{

                  System.out.println(“密码错误!”);

}

              }else{

                  System.out.println(“用户名错误!”);

              }

}

 

标识符

标识符的用于及要求

1.      用于命名类、方法、变量和包

2.      由字母、数字、“_”和符号组成

3.      只能以字母、“_”、“$”开头,不能以数字开头

4.      大小写敏感

5.      无长度限制,不能空格

6.      不能用JAVA的关键词和保留词

7.       

关键词的注意点

1.      自己命名变量或者不能和关键词医院

2.      True,false,null不是关键字,是字面值,同样不能把他作为名字

3.      Goto和const是保留字,不用于java开发,也不能命名

4.      其他语言中的goto语句的用法是(无条件跳转)

5.      Java中代替goto的是break loop,其中loop是标号,标记一个循环,break loop就是结束循环

6.      Sizeof(C/C++中的关键字:求变量在内存中所占的字节数),但在Java中不需要(JVM)

 

良好的编码习惯

1.      类的首字母要大写,如果有多个单词,每个单词都要大写,比如HelloWorld

2.      接口命名与类同

3.      方法命名第一个单词小写,以后每个单词的首字母都大写,比如getName

4.      变量名的命名与方法同

5.      常量的字母都大写,单词与单词之间用“_”,比如DRIVER_NAME,PI =3.14

6.      包的名字都小写,如com.tarena.corejava.day01

 

 

数据类型

整型

Byte

1字节

8位

-2^7  –  2^7-1

Short

2

16

-2^15 – 2^15-1

Int

4

32

-2^31 – 2^31-1

Long

8

64

-2^63 –2^63-1

浮点型

Float 4字节 32位

Double 8字节 64位

字符型

Char 2字节 16位(”A”:65,”a”:97,”o”:48)0-65535

布尔型

Boolean :true/false

 

其他类型

引用类型(地址(引用)---内存(对象)):类、接口、数组、枚举、标注等

 

类型的转换

除布尔型其他类型都可以转换

1.      自动转换

1.1表数值范围内可以自动转换

1.2表数范围小的可以转换为范围大的

1.3封装类与基本类之间可以转换

1.4子类与父类也可以转换

1.5byte-short-int-long-float-double

2.      强制类型转换

其他情况可以使用强制转换,如byteb=(byte)128

 

变量的定义

方法:类型+变量名[ = 值]

例如:int a=5,a可变,5是常数

     Int a//声明

        a=5//初始化

 

隐式转换

A运算符b

如果a,b中任意一个是double型,运算结果就是double型

如果a,b中任意一个是float型,运算结果就是float型

如果a,b中任意一个是long型,运算结果就是long型

如果a,b中没有double,float,long型,前面运算的结果就是int型

例如:

Byte a=3;

a=a+5;//会报错,5是int型,不能自动转换为byte型

a+=5;//不会报错,自动转换

 

运算符

1.      赋值运算符

=,+=,*=,-=

2.      关系运算符

>,>=,==,!=

注意:

boolean型不能用于比较大小

equals主要比较对象的地址(即引用中存储的内容)

浮点型数据不能通过运算符比较

3.      三目运算符

? :

如果条件为真,则执行?与:之间的

如果条件为假,则执行:之后的

例如:

     Double c=a>b?1:2.0

     a=8,b=7,则结果为c=1.0

     a=8,b=7,则结果为c=2.0

【上篇】
【下篇】

抱歉!评论已关闭.