JAVA基础

JAVA基础

1. DOS命令

#盘符切换    
d:   切换到d盘
#查看当前目录下的所有文件  
dir
#切换目录 change directory
cd目录名 
#返回上一级
cd..
#清理屏幕 clear screen  
cls
#退出终端
exit
#查看电脑的ip
ipconfig
#打开应用
calc     计算器
mspaint  画图
notepad  记事本
#ping命令
ping www.baidu Icom
#文件操作
md目录名    创建一个命名目录(文件夹)
rd目录名    删除一个命名目录(文件夹)
cd>文件名   创建一个命名文件夹
de1文件名   删除一个命名文件

2. JAVA基础

hello, world

public class Hello{                              
	public static void main(String[] args){
		System.out.print("hello, world");
	}
}  

public class:类

public static void:修饰词,关键字

main:方法,程序必须通过main方法才能执行

String[] args:参数

String:字符串

System.out.print:输出

**注1:**IDEA中

psvm→public static void main

sout→System.out.print

**注2:**public class后面的类名需和txt文件名一致,且首字母大写

注释

//        单行注释

/*
          多行注释
*/

/**        文档注释
* @Description
* @Author 
*/ 

标识符

Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。

  • 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者**下划线(_)**开始
  • 首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
  • 不能使用关键字作为变量名或方法名。
  • 标识符是大小写敏感的
  • 可以使用中文命名,但是一般不建议这样去使用

数据类型

​ Java为**强类型语言:**要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。

Java的数据类型分为两大类

  • 引用类型(refenrence type)

    基本类型以外的数据类型都为引用类型:接口数组

    String name="xiangwan";
    
  • 基本类型(primitive type)

    数值类型整数类型byte占1个字节(8位)范围:-128-127
    short占2个字节范围:-32768-32767
    int占4个字节范围:-2147483648-2147483647
    long占8个字节范围:-9223372036854775808-9223372036854775807
    浮点类型float占4个字节
    double占8个字节
    字符类型char占2个字节(一个汉字)
    boolean类型占1位,其值只有true和false两个

    注1:

    long num1=200L  //Long类型数字后要加L
    float num2=50.1F   //Float类型要在数字后加F
    String namea="xiangwan"   //String不是关键字,是类
    

    **注2:**进制

    //整数扩展:    进制    二进制0b    十进制    八进制0    十六进制0x
            int i=2;
            int i2=0b10;
            int i8=02;
            int i16=0x2;
    

    **注3:**浮点数 精度有限 离散 不能直接相比较 有舍入误差,对于银行业务常用BigDecimal数学工具类。

    **注4:**所有字符本质还是数字

    public class Demo1 {
        public static void main(String[] args) {
    //强制转换按照Unicode表(97=a, 65=A):  0-65536
    		char c1='a';
            char c2='晚';
            System.out.println((int)c1);//强制转换  输出为97
            System.out.println((int)c2);//强制转换  输出为26202
    //Unicode 转义:U0000-UFFFF   采用16进制
    	    char c3='\u0061';
            System.out.println(c3);   //Unicode 转义输出字符
        }
    }
    

    **注5:**转义字符

    //  \t    制表符,不使用表格的情况下在垂直方向按列对齐文本
    //  \n    换行
    

    **注6:**布尔值扩展

    if(flag==true)   //与
    if(flag)         //是一样的类型转换
    

类型转换

​ 由于JaVa是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。运算中,不同类型的数据先转化为同一类型,然后进行运算。\

低—————————————————————————>高

byte,short,char——>int——>long——>float——>double


◆强制类型转换 高——低

◆自动类型转换 低——高

注:
1,不能对布尔值进行转换;
2.不能把对象类型转换为不相干的类型;
3,在把高容量转换到低容量的时候,强制转换;
4.转换的时候可能存在内存溢出,或者精度问题!

例:

public class Demo1 {
    public static void main(String[] args) {
        //操作比较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用下线分割
        int money = 10_0000_0000;
        int years = 20;
        int tota1=money*years;   //-1474836480,计算的时候溢出了
        long total2 =money*years;
        long total3 =money*((long)years);
        System.out.println(total2);  //-1474836480输出错误,默认是int,转换之前已经存在溢出问题了
        System.out.println(total3);  //输出正确,先把一个数转换为机ong
    }
}

变量、常量、作用域

变量

​ Java为强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。Java变量是程序中最基本的存储单元,其要素包括变量名变量类型作用域

  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型。

  • 变量名必须是合法的标识符。

  • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束.

作用域

​ 变量有三种作用域:类变量实例变量局部变量

  • 局部变量:从属于方法,在所在方法里使用,必须赋值初始化。
public class Demo2 {
    //main方法
    public static void main(String[] args) {
    int i=10;             //局部变量
    }
}
  • 实例变量:在方法外,从属于对象,不必须赋值。数值类型默认值为0、0.0;布尔值默认为false;除基本类型,其余的默认值为null
public class Demo2 {
    //实例变量
    String name;     
    int age;
    char fname;
    //main方法
    public static void main(String[] args) {
        //使用例
        //变量类型  变量名字  =   new Demo2()
        Demo2 demo2=new Demo2();
        System.out.println(demo2.name);   //输出null
        System.out.println(demo2.age);    //输出0
        System.out.println(demo2.fna);    //输出u0000,即空格
    }
}
//实例变量赋值
public class Demo0_1 {
    public static void main(String[] args) {
        Person person = new Person();
        person.setgender("female");
        person.setAge(20);
        person.setName("xiangwan");
        System.out.println("name" + person.getName() + ",age:" + person.getAge() + ",gender:" + person.getgender());
    }
}
class Person {
    private String gender;
    private String name;
    private int age;

    public void setgender(String gender) {
        this.gender = gender;
    }

    public String getgender() {
        return gender;
    }

    public void setName(String name) {
        this.name = name;
    }

  • 类变量:从属于类,static
public class Demo3 {
    //类变量  static
    static double salary=5000;

    public static void main(String[] args) {
        System.out.println(salary);
    }
}
常量 final
public class Demo3 {
    //常量  final
    //修饰符,不存在先后顺序
    static final double PI = 3.14;
    //final static double pi = 3.14;与上行相同
    public static void main(String[] args) {
        System.out.println(PI);
    }
}
命名规范
  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary除了第一个单词以外,后面的单词首字母大写
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰原则:run(0,runRun0

运算符

​ Java语言支持如下运算符:

  • 算术运算符:+,-,*,/,%(模运算,即取余),++(自增),–(自减)

  • 赋值运算符:=

  • 关系运算符:>,<,>=,<=,=,!=,instanceof

  • 逻辑运算符:&&(与),‖(或),!(非)

  • 位运算符:&,|,^(位异或,不同为0),~(位非),>>(右移,除2),<<(左移,乘2),>>> (仅了解!!!)

  • 条件运算符:?,:

  • 扩展赋值运算符:+=,-=,*=,/=

基本运算符
  1. long类型数据参与算数运算时结果为long类型,double同理,除此之外均为为int类型。

  2. b = a++;//先给b赋值,再自增;

    b = ++a;//先自增,再赋值 。

    a+ = b; //即a = a+b

  3. Math数学类,方法中输入Math.会自动展开类。例:Math.pow(a,b) = a^b

字符串连接符 +

​ 左起第一个字符串前面的+为运算符,后面的+作为连接符。

public class Demo1 {
    public static void main(String[] args) {
		int a = 10;
		int b = 20;
		System.out.println(a+b+" "+a+b+" "+a+b); 
		//输出30 1020 1020
    }
}
三元运算符

​ x ? y : z;//如果x==ture,则结果为y,否则为z

package operator;

public class Demo1 {
    public static void main(String[] args) {
        int score = 61;
        String type = score < 60 ? "不及格" : "及格" ;
        System.out.println(type);   //输出及格
    }
}

包机制

​ 为了更好地组织类,Jva提供了包机制,用于区别类名的命名空间。包语句的语法格式为:

package pkg1[.pkg2[.pkg3...]];

一般利用公司域名倒置作为包名

​ 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import’"语句可完成此功能

import package1[.package2...].(classname *)

实例

package operator;
import base.Demo.*  //*通配符,导入所有类

JavaDoc

​ Javadoc命令是用来生成自己API文档的,参数信息:

  • @author作者名
  • @version版本号
  • @since指明需要最早使用的jdk版本
  • @param参数名
  • @return返回值情况
  • @throws异常抛出情况

实例:

package operator;

/**
 * @author Jellfish
 * @version  1.0
 * @since 1.8
 */
public class Demo2 {
    String name;

    /**
     * @author Jellfish
     * @param name
     * @return
     * @throws Exception
     */
    public String test(String name) throws Exception{
        return name;
    }
}

**注:**使用IDEA生成Javadoc时Java版本过低会报错:“javadoc: 错误 - 无效的标记: --source-path”,可用cmd命令行生成。

Microsoft Windows [版本 10.0.25252.1010]
(c) Microsoft Corporation。保留所有权利。

C:\Users\Administrator\IdeaProjects\JavaSE\Base grammer\src\operator>javadoc -encoding UTF-8 -charset UTF-8 Demo2.java
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值