Java基础语法

基础

1. Java对大小写敏感

2. Java注释

//单行注释 这是一行注释

/*
    这里是多行
    注释
*/

/**
    这里是文档注释
    @author 0o晓月メ
*/

3. 访问修饰符

  • public 都能访问,公共的
  • protected 包里面的成员,本身,子类 能够访问
  • private 只有类本身可以访问
  • default 类本身 以及同一包里面的成员能够访问

4.类的定义

public class People {
    //类静态属性
    public static String type = "chinese";
    //常量定义
    public final int CONSTANT = 1;
    //构造器
    public People(String name, int age){
        this.setName(name);;
        this.setAge(age);
    }
    //定义属性
    private String name;
    private int age;
    //定义方法
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
}

5.运算符

  • 自增减
  • 关系运算符
  • 强制类型转换

demo

/**
 * 运算符号
 * @author 0o晓月メ
 */
public class OperationalSymbol {
    //程序入口
    @SuppressWarnings("unused")
    public static void main(String[] args) {
        /**
         * 自增减:实现自身的 加/减 并且赋值给自身 a++<=> a=a+1
         *      ++a/--a:
         *          先做其他运算再执行a的自增/减
         *      a++/a--:
         *          先做a的自增再执行其他运算/减
         */
        int a = 1;
        int b = 1;
        System.out.println(a++);//->1
        System.out.println(a);  //->2
        System.out.println(++b);//->2
        System.out.println(b);  //->2

        /**
         * 关系运算符
         * >,>=, <,<=,==,
         * 与:&&, 或:||, 非:!=
         * 3元表达式
         * a>b?true时返回这个值:false返回这个值
         */
        System.out.println(1>2);//=>false
        System.out.println(1<2);//=>true
        System.out.println(3>1&&3<4);//=>true
        System.out.println(2>4?"对":"错");//=>错

        /**
         * 强制类型转换
         */
        double dub = 1.232323;
        //强制转为int 这里有精度丢失
        int numb  = (int)dub;
    }
}

6.控制流程

  • 条件语句
  • 循环语句
  • 多重选择语句
  • 中断语句

demo

package knowledge.base;
/**
 * 控制流程语句
 * @author 0o晓月メ
 *
 */
public class Sentence {

    public static void main(String[] args) {

        int i = 10;
        /**
         * 条件语句
         */
        if(i>10){
            System.out.println("符合条件");
        }else{
            System.out.println("不符合条件");
        }

        /**
         * 循环语句
         */
        //先判断是否符合再执行
        while(i > 0){
            System.out.println(i--);
        }
        //先执行在判断是否符合条件
        do{
            System.out.println(i++);
        }while(i<10);

        for(int j = 0;j<5;j++){
            System.out.println(j);
        }
        /**
         * 多重选择语句
         * 若不添加 break 会一直往下执行其他的case
         */
        i = 5;
        switch(i){
            case 1:
                System.out.println("值为1");
                break;
            case 5:
                System.out.println("值为5");
                break;
            case 7:
                System.out.println("值为7");
                break;
            default:
                System.out.println("没有符合的");
                break;
        }
        /**
         * 中断语句
         * break 跳出循环体
         * continue 跳出本次循环
         */
        for(int t = 0;t<5;t++){
            if(t==2) continue;
            if(t==4) break;
            System.out.println(t);
        }
    }
}

知识补充

static

类静态属性/方法 不需要创建实例,static 修饰的方法不能访问实例属性 ,可以直接使用类名来调用static 修饰的属性/方法,由于static是在编译时并被创建,所以不能被覆盖(即不适于多态)

private

只有自身能够访问,子类也不能访问,故不能覆盖,如果子类中包含一样的 属性/方法 则视为新添加的 属性/方法

接口

一个类可以实现多个接口,接口只能声明抽象方法和常量,接口不能被实例化,常用于多态

public interface MyInterface {
    public final String ="test";
    public void getSomething();
}

抽象类

抽象类可以有抽象的方法,也可以有实现了的方法,可以有各种访问权限的属性

public abstract Chicken{

}

值传递

java方法的参数是值传递,是参数的一个副本,对参数进行修改不会影响到原来的值,对象参数除外,因为对象参数拷贝的值是对象的一个引用,所以改变对象参数会影响到原来的参数值。

Java虚拟机

Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。

JRE

Java运行时环境(JRE)是将要执行Java程序的Java虚拟机。它同时也包含了执行applet需要的浏览器插件。

JDK

Java开发工具包(JDK)是完整的Java软件开发包,包含了JRE,编译器和其他的工具(比如:JavaDoc,Java调试器),可以让开发者开发、编译、执行Java应用程序。

Java基础(1) - 语法 & 概念的更多相关文章

  1. 二、JAVA基础、语法

    第二节:JAVA基础.语法 1.修饰符.变量:    Java中主要有如下几种类型的变量    局部变量                                                 ...

  2. JAVA 基础基本语法---常量与变量

    JAVA 基础基本语法---常量与变量 语法:计算机能够识别的语言的规则: 0. 基本语法 编写Java程序时,应注意以下几点: 大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hel ...

  3. java基础入门-语法(1)

    因为平时用到一些java的项目,比如ElasticSearch,zookeeper等,有时也想看看里面怎么实现的,或者看到别人分析原理时候会用到java源码, 自己也想跟着学一下,最起码能看懂别人的分 ...

  4. Java基础try-with-resource语法源码分析

    众所周知,所有被打开的系统资源,比如流.文件或者Socket连接等,都需要被开发者手动关闭,否则随着程序的不断运行,资源泄露将会累积成重大的生产事故. 在Java的江湖中,存在着一种名为finally ...

  5. java基础(一) -语法

    基本语法 编写Java程序时,应注意以下几点: 大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hello是不同的. 类名:对于所有的类来说,类名的首字母应该大写.如果类名由若干单词组 ...

  6. java基础知识-基本概念

    1.1 java语言有哪些优点? 1.java语言为纯面向对象的语言. 2.平台无关性.java语言的优点便是“一次编译,到处执行”.编译后的程序不会被平台所约束,因此java语言有很好的移植性. 3 ...

  7. 八、Java基础---------基本语法

    一.学习Java注意的细节:     1.1 Java语言拼写上严格区分大小写: 1.2 一个Java源文件里可以定义多个Java类,但其中最多只能有一个类被定义成public类: 1.3 若源文件中 ...

  8. 黑马程序员——JAVA基础之语法、命名规则

    ------- android培训.java培训.期待与您交流! ---------- 1.java语言组成:关键字,标识符,注释,常量和变量,运算符,语句,函数,数组. 2.java关键字:被Jav ...

  9. java基础-01基本概念

    java的特点 跨平台 所谓的平台,我们可以理解为操作系统. 大部分语言是不能跨平台的,比如c语言的程序在windows和linux上需要编写不同的代码. java程序是运行在JVM(Java Vir ...

随机推荐

  1. 深度解析MySQL启动时报“The server quit without updating PID file”错误的原因

    很多童鞋在启动mysql的时候,碰到过这个错误, 首先,澄清一点,出现这个错误的前提是:通过服务脚本来启动mysql.通过mysqld_safe或mysqld启动mysql实例并不会报这个错误. 那么 ...

  2. Python装饰器实现几类验证功能做法

    最近新需求来了,要给系统增加几个资源权限.尽量减少代码的改动和程序的复杂程度.所以还是使用装饰器比较科学 之前用了一些登录验证的现成装饰器模块.然后仿写一些用户管理部分的权限装饰器.比如下面这种 de ...

  3. 前端魔法堂:屏蔽Backspace导致页面回退

    前言  前几天用户反映在录入资料时一不小心错按Backspace键,就会直接回退到是一个页面,导致之前辛辛苦苦录入的资料全部丢失了.哦?居然还有这种情况.下面我们来一起探讨一下吧! Windows系统 ...

  4. javaWeb学习总结(1)- JavaWeb开发入门

    一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源( ...

  5. JS 浏览器cookie的设置,读取,删除

    JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的. 而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一 ...

  6. [转]ef使用dbfirst方式连接mysql

    为了学习ORM,选择了EntityFramework,经历了三天两夜的煎熬,N多次错误,在群里高手的帮助下,终于成功,现在将我的心路历程记录下来,一是让自己有个记录,另外就是让其它人少走些弯路. 我的 ...

  7. YII缓存依赖的应用

    YII缓存依赖的应用 缓存 缓存依赖 Yii 缓存是提升Web应用性能的简便有效的方式.当我们在加载网页需要过多的时间,比如说查询时间过久,抑或是调用接口占用过多I/O,建立缓存是一个行之有效的方法, ...

  8. TreeMap集合特点、排序原理

    TreeMap特点(类似于TreeSet): 1.无序,不允许重复(无序指元素顺序与添加顺序不一致) 2.TreeMap集合默认会对键进行排序,所以键必须实现自然排序和定制排序中的一种 3..底层使用 ...

  9. 关于PHP高并发抢购系统设计

    内容并发抢购系统注意事项高并发架构设计描述程序端核心代码实现订单流程mysql 端并发解决方案注意事项(1)高并发环境下,对于服务器cup.内存.网络宽带使用率会瞬间暴涨,需要注意对同服务器上其他应用 ...

  10. Spring学习(10)--- @Qualifier注解

    按类型自动装配可能多个bean实例的情况,可以使用Spring的@Qualifier注解缩小范围(或指定唯一),也可以指定单独的构造器参数或方法参数 可用于注解集合类型变量 例子: package c ...