系统开始学后端

Java基本语法

2018-12-24  本文已影响4人  DeeJay_Y

变量和控制语句

基本数据类型

byte(1byte): -128 ~ +127
short(2bytes)
int(4bytes)
long(8bytes)
unsigned byte(1byte): -128 ~ +127
unsigned short(2bytes)
unsigned int(4bytes)
unsigned long(8bytes)

float(4bytes) 精度:8,23
double(8bytes) 精度:11,52

char

true
false

变量和赋值

控制流程语句

类型模型

Java中的常量和变量都可以对应于一个对象,这个对象的行为和具有的属性是由类来定义的

Java程序的基本结构就是一系列类的定义,类之间的关系和具体类的对象之间的互相操作

Java类

java对象

java方法和成员变量

来看如下例子:
现有如下class

package com.DeeJay;

public class Human {
//    static变量隶属于类
    public static int Number = 0;

//    成员变量
    public String name;
    public int weight;

//    无参构造
    public Human () {
        this.name = "default Name";
        this.weight = 100;
    }
//    有参构造
    public Human (String name, int weight) {
//        这里的this指的是要new出来的那个对象
        this.name = name;
        this.weight = weight;
    }

//    普通方法
    public void rename(String newName) {
        this.name = newName; // 这里等价于 name = newName; 因为没有歧义
    }
//    普通方法
    public int workout() {
        this.weight -= 10;
        return this.weight;
    }

//    特殊的方法 (可以在方法中使用构造函数)
    public Human newHuman () {
        return new Human("jason", 120);
    }
}

我们在main中使用这个类:

public class Main {

    public static void main(String[] args) {
        Human jeff = new Human("jeff", 150);

        Human bob = jeff; // 可以直接将new好的对象赋值个一个新变量 从此这两个变量引用的就是同一个对象了
        System.out.println(bob.name); // jeff
        System.out.println(jeff.name);// jeff
        bob.workout();
        System.out.println(bob.weight); // 140
        System.out.println(jeff.weight); // 140
//       2次console之后  值是一样的  说明了是同一个变量

//        来看static变量
        Human.Number += 99;
        System.out.println(Human.Number); // 建议写法 99
        System.out.println(jeff.Number); // 不建议 99
        System.out.println(bob.Number); // 不建议 99
//        这三个值其实是一个值,都代表的是Human这个类的static变量

    }
}

修饰符

一般定义类时,成员变量都为private修饰,通过方法去访问变量
方法一般还是public修饰

来看例子:

public class getterSetter {
    private  String innerVar;

    public void setInnerVar(String varName) { // 通过setter赋值
        innerVar = varName;
    }

    public String getInnerVar() { // 通过 getter访问
        return innerVar;
    }
}

包和层次结构

上一篇下一篇

猜你喜欢

热点阅读