java 语法基础

来源:互联网 发布:数据挖掘招聘要求 编辑:程序博客网 时间:2024/06/05 10:39

本篇用于整理java基础语法(时间一长,有些边缘的内容就记不清了,遇到就整理下吧),代码使用jdk 1.8

switch语句

switch(integral-selector) {    case integral-value1:        statement;        break;    case integral-value2:        statement;        break;    default:        statement;}

在jdk1.8中switch语句支持charbyteshortintCharacterByteShortIntegerStringenum
在jdk1.8之前,switch语句是不支持String

一个Java源代码文件只能有一个public类

以下引用内容来自《Java 编程思想》

当编写一个Java源代码文件时,此文件通常被称为编译单元(有时也被称为转译单元)。每个编译单元都必须有一个后缀名.java,而在编译单元内则可以有一个public类,该类的名称必须与文件的名称相同(包括大小写,但不包括文件的后缀名.java)。每个编译单元只能有一个public类,否则编译器就不会接受。如果在该编译单元之中还有额外的类的话,那么在包之外的世界是无法看见这些类的,这是因为它们不是public类,而且它们主要用来为主public类提供支持。

这里写图片描述

访问权限

private、protected、public、缺省
对类而言,只有两个访问修饰符适用(public、缺省)
private 仅对自己可见
public 对任何人可见
protected 仅对其同一个包中的子类可见
缺省 仅对同一个包中的所有类可见

验证 protected 仅对其同一个包中的子类可见

package quan.java.Base; public class TestA {     protected void test() {        System.out.println("TestA.test");    }}
package quan.java.Base;public class TestN extends TestA {    public static void main(String[] args) {        System.out.println("quan.java.Base.TestN.main");         new TestA().test();    }}
package quan.java.Collections;import quan.java.Base.TestA;public class TestN extends TestA {    public static void main(String[] args) {        System.out.println("quan.java.Collection.TestN");        new TestA().test();    }}

分别执行TestN.java,quan.java.Base.TestN.java可以正常执行,而quan.java.Collections.TestN.java无法正常执行

验证 缺省 仅对其同一个包中的所有类可见

package quan.java.Base;class TestA {     public static void test1() {        System.out.println("TestA.test1");    }    public void test2() {         System.out.println("TestA.test2");    }}
package quan.java.Base;public class TestN {    public static void main(String[] args) {        System.out.println("quan.java.Base.TestN.main");        TestA t = new TestA();        t.test2();        TestA.test1();    }}
package quan.java.Collections;import quan.java.Base.TestA;public class TestN {    public static void main(String[] args) {        System.out.println("quan.java.Collection.TestN");        TestA t = new TestA();        t.test2();        TestA.test1();    }}

这里写图片描述

原创粉丝点击