JAVASE复习(1)

0.0 如题所示

对javase相关知识进行复习巩固,首先是对idea的一些用法,快捷键进行复习整理~

idea2021设置优化

快捷键大全

新建一个项目HelloWorld开始复习

1 JAVA简介

1.1 挑一些重要的概念记下来

JAVASE,JAVAEE,JAVAME三者的关系

java是编译型和解释型两种类型的集合

java的可移植性来自于JVM

JRE:java运行环境,包括java虚拟机,java核心类库和支持文件,而不包含开发工具,包含开发工具和编译器的叫做JDK

主要用jdk的两个命令,于jdk/bin/目录下的java.exe和javac.exe

1.2 helloworld

有main方法的程序一般都是Application程序

java中的类名要和文件名相同,不然无法编译

Hello.java

public class Hello {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

 

一个*.java编写完后,通过javac.exe编译成*.class文件,然后通过java.exe放入JVM中运行,java Hello

1.3 类

类是java中的基本组成元素,所有的java程序都要被类管理

定义的时候,在class前面选择性的添加public

一个*.java文件中只能有一个public class,且这个public class的名称要和文件名一致

而class类名可以和文件名不一致,但是一个文件中存在多个class定义,编译后会分为不同的*.class文件

1.4 主方法main()

主方法表示一个程序的起点,java中主方法也要放在一个类中,定义格式如下

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

主方法在的类叫做主类,一般主类都用public class定义

1.5 系统输出

System.out.print("Hello World!");//输出后不换行
System.out.println("Hello World!");//输出后换行

1.6 CLASSPATH

CLASSPATH指向要加载的类的目录,经常在系统环境变量里看到

PATH:操作系统的环境属性,指的是可以执行命令的程序路径

CLASSPATH:是所有*.class文件的执行路径,java命令执行时利用此路径加载所需要的*.class文件

 

2 程序基本概念

2.1 注释

单行 //

多行 /**/

文档 /** */

2.2 数据类型

JAVASE复习(1)

其中引用数据类型牵扯内存的开辟,为整个java入门的第一大难点

JAVASE复习(1)

2.3 数据类型的溢出

例如,int类型取最大值,Integer.MAX_VALUE,同理取最小值

最大值214783647+1之后为最小值-214783648

最小值-214783648-1之后为214783647

最小值-214783648-2之后为214783646

 

扩大数据类型:

public class TestDemo01 {
    public static void main(String[] args) {
        int max = Integer.MAX_VALUE;
        int min = Integer.MIN_VALUE;
        //int + long = long
        System.out.println(max + 1L);//最大值加一
        System.out.println(min-(long)1);//最小值减一
        //long + int = int
        System.out.println((long)min -2);//最小值减2
    }
}

输出:
2147483648
-2147483649
-2147483650

注意其中转换的方式

 

大小写字母转换:

public class TestDemo02 {
    public static void main(String[] args) {
        char c = 'A';
        int num = c;
        num = num +32;
        System.out.println((char)num);
    }
}

2.4 String型数据

String属于引用数据类型,他属于一个类所以大写首字母

使用‘+’来进行字符串拼接

2.5 三目运算

JSP开发中一定会用到,格式为:

布尔表达式?满足此表达式时的内容 : 不满足此表达式时候的内容

2.6 与操作

& 普通与

&& 短路与

if((1 == 2)&(10/0 == 0))
程序报错↑
if((1 == 2)&&(10/0 == 0))
返回为假↑

前面的条件为false时,&&不再判断,直接得出结论

同理或操作也如此

if((1 == 1)|(10/0 == 0))
程序报错↑
if((1 == 1)||(10/0 == 0))
返回为真↑

前面的条件为true时,||不再判断,直接得出结论

2.7 位运算

详见书本,如何更快计算2的3次方:

public class TestDemo03 {
    public static void main(String[] args) {
        int x = 2;
        System.out.println(x<<2);
    }
}

以及还有位或,位与操作

 

2.8 方法

方法的主要功能是封装可以执行的一段代码,这样不仅可以重复利用,还可以更方便实现代码的维护。

修饰符 返回值类型 方法名(参数类型 参数名){
    ...
    方法体
    ...
    return 返回值;
}

修饰符就是像public static这样的

返回值的类型有2种:

  • 直接设置Java中的数据类型
  • 方法没有返回值void,可以不使用return返回值,但是可以写个return结束调用

方法命名规范:第一个单词首字母小写,其余单词首字母大写

定义一个加法

public class TestDemo04 {
    public static void main(String[] args) {
        System.out.println(add(123,7));
    }

    /**
     * 实现数据的加法操作
     * @param x 操作数字一
     * @param y 操作数字二
     * @return 返回两个数字的加法结果
     */
    public static int add(int x,int y){
        return x + y;
    }
}

2.8.1 方法的重载

方法的重载指方法名称相同,参数的类型或者个数不同,调用的时候会按照传递的参数类型和个数完成不同方法体的执行。

也就是说:一个方法名称,执行多项操作,一个add(),要算2个数相加,也要能算3个数相加

public class TestDemo04 {
    public static void main(String[] args) {
        System.out.println(add(123,7));
        System.out.println(add(1,1,1));
        System.out.println(add(3.14,2.44));
    }

    /**
     * 实现数据的加法操作
     * @param x 操作数字一
     * @param y 操作数字二
     * @return 返回两个数字的加法结果
     */
    public static int add(int x,int y){
        return x + y;
    }
    /**
     * 实现数据的加法操作
     * @param x 操作数字一
     * @param y 操作数字二
     * @param z 操作数字三
     * @return 返回三个数字的加法结果
     */
    public static int add(int x,int y,int z){
        return x + y + z;
    }
    /**
     * 实现数据的加法操作
     * @param x 操作数字一
     * @param y 操作数字二
     * @return 返回两个小数的加法结果
     */
    public static double add(double x,double y){
        return  x + y;
    }
}

2.9 方法的递归调用

递归是自己调用自己的特殊形式,必须满足2个条件:

  1. 要有结束条件
  2. 每次调用都要改变传递的参数

 

上一篇:host文件的作用


下一篇:[iOS]提交App报错ERROR ITMS -90207