java(8)控制逻辑 修饰符

包 package 目录概念,箱子 package放在源文件最前面,package语句只能有一个,多层用“.”分割

如何使用package, 同包类直接引用,不同包import 包名.*; import 包名.类名 import要在package之后引用

静态引入:

引入包中的静态成员变量和静态方法,static

import static 包名.aaa.*;

import static 包名.aaa.方法名称;

类的访问级别:public(跨包),默认访问级别(包内),protect,private,abstract,final(最终修饰符:一旦被初始化就不能再被修改。)

final修饰对象类型的成员变量:必须初始化。不会被默认初始化。修饰成员变量其值是不能改变的(基本类型值不可以改变;引用类型引用不可以改变,但可以改变引用对象的成员变量)。构造方法可以给成员变量初始化。

final修饰局部变量:可以不被初始化。

final修饰方法:final修饰的方法可以被子类继承,但不可以被重写。保护了父类的某些特殊数据。

final修饰基本类型:基本类型的值不可以改变

封装:类内定义的成员变量和方法,通过限制其成员变量和方法的可见性,使得外界不能访问他们。因此封装展现了接口,隐藏了细节。

静态修饰符static:

在内存中只能有一份。

静态变量:只能存在一份,它属于类,不属于对象。静态成员变量被该类中所有的对象分享。

构造器:每次创建都会执行

访问静态成员变量:类名.静态成员变量;静态成员变量;不能使用this;

静态常量:static final 不会默认值,必须初始化

package demo;
import static java.lang.System.out;

public class test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		out.println("通过静态引入打印数据");
	}

}

  

package demo;
import static java.lang.System.out;

public class test {

	final int i;
	public test(int i)
	{
		this.i = i;
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		out.println("通过静态引入打印数据");
		test t = new test(155);
		int n = t.i;
		out.println(n);

	}

}
package demo;
import static java.lang.System.out;
class bike
{
	String color = "黄色";
	public final void getMes()
	{
		out.println("父类成员变量color:" + color);
	}

}

public class test extends bike
{

	final int i;
	String color = "绿色";
	public test(int i)
	{
		this.i = i;
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		out.println("通过静态引入打印数据");
		test t = new test(155);
		int n = t.i;
		out.println(n);
		t.getMes();
	}
}

  

  

java中的修饰符分为类修饰符,字段修饰符,方法修饰符。根据功能的不同,主要分为以下几种。

1、权限访问修饰符 public,protected,default,private,这四种级别的修饰符都可以用来修饰类、方法和字段。
  包外 子类 包内 类内

public yes yes yes yes

protected no yes yes yes

default no no yes yes

private no no no yes

2、final修饰符 final的意思是不可变,他可以修饰类、字段、方法。修饰类后类不能被扩展(extends),也就是不能被继承。修饰字段后字段的值不能被改变,因此如果有final修饰字段,应该对字段进行手动初始化。修饰方法后该方法不能被改变,也就是重写。

3、abstract修饰符 abstract是抽象的意思,用来修饰类和方法,修饰类后,该类为抽象类,不能被实例化,必需进行扩展。修饰方法后,该方法为抽象方法必须被子类重写(override)。

4、static修饰符 static用来修饰内部类,方法,字段。修饰内部类说明该内部类属于外部类而不属于外部类的某个实例。修饰字段说明该字段属于类而不属于类实例。修饰方法说明该方法属于类而不属于类实例

时间: 2024-10-09 17:00:54

java(8)控制逻辑 修饰符的相关文章

(转) java中的访问修饰符

对Java中的修饰符一直记不住,现在结合网上的一些资料进行总结,并重点说明一下protected修饰符. 一. Java中的访问修饰符 Java面向对象的基本思想之一是封装细节并且公开接口.Java语言采用访问控制修饰符来控制类及类的方法和变量的访问权限,从而向使用者暴露接口,但隐藏实现细节.访问控制分为四种级别: (1)public: 用public修饰的类.类属变量及方法,包内及包外的任何类(包括子类和普通类)均可以访问: (2)protected: 用protected修饰的类.类属变量及

Java语言中的修饰符

类.方法.成员变量和局部变量的可用修饰符 修饰符 类 成员方法 构造方法 成员变量 局部变量 abstract Y Y _ _ _ static _ Y _ Y _ public Y Y Y Y _ protected _ Y Y Y _ private _ Y Y Y _ synchronized _ Y _ _ _ native _ Y _ _ _ transient _ _ _ Y _ volatile _ _ _ Y _ final Y Y _ Y Y 1.访问控制修饰符: Java语言

Java面向对象编程之Java语言中的修饰符

近日,读了孙卫琴老师的<Java面向对象编程>一书,心中颇有些感悟,想着将其记录下来. Java中的修饰符 在Java语言中,有这样一些单词(说得再准确点儿,应该是形容词):abstract(抽象的).static(静态的).public(公共的).protected(受保护的).private(私有的).synchronized(同步的).native(本地的).transient(暂时的).volatile(易失的)和final(不可改变的),它们被成为修饰符,这些修饰符可以修饰类.变量和

1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用

1.27 Java基础总结 ①访问修饰符访问权限②类和方法的基本声明和使用 成员变量(属性)①类中添加成员变量 访问修饰符 类型 变量名 private String name ②实例化对象调用类的构造方法类构造对象,Teacher one = new Teacher(): 有static的可以直接调用,因为static是类级别的 ③JavaBean里边一般规则应该有公共的无参构造应该有符合命名规范的get/set方法 ④对象的回收:没有任何引用指向该对象时,GC会回收 主动回收:对象 = nu

关于Java语言中那些修饰符

一.在java中提供的一些修饰符,这些修饰符可以修饰类.变量和方法,在java中常见的修饰符有:abstract(抽象的).static(静态的).public(公共的).protected(受保护的).private(私有的).synchronized(同步的).native(本地的).transient(暂时的).volatile(易失的).final(不可改变的) 二.修饰顶层类的修饰符包括abstract.public和final,而static.protected和private不能修

详解Java中的访问控制修饰符(public, protected, default, private)

Java中的访问控制修饰符已经困惑笔者多时,其中较复杂的情况一直不能理解透彻.今天下定决心,系统.全面地研究Java中的访问控制修饰符的所有方面,并整理成这篇文章,希望有同样疑惑的读者读完后能有所收获.如果文章中出现错误,欢迎评论指出,共同交流~ 说在前面:这篇文章只研究Java中访问控制修饰符声明类的变量/方法的情况. 先抛出结论: * 成员变量/方法的访问权限 *                                        private        default  

Java基础——protected访问修饰符探讨

Java基础——protected访问修饰符探讨 根据官方说法:(如图) protected修饰符是可以修饰其他包中的自损类的,但是我做了个实验,结果发现了一个有趣的现象! 具体请往下看: package com.demo1; public class Demo1 { protected Demo1(){ System.out.println("protected"); } protected void function(){ System.out.println("受保护方

Java中的类修饰符

资料主要来源于网络(http://60.28.60.3/zy/java-new/zhishidian/chap3/3.htm) 之前每次写小测试程序的时候,总是把一个类放在一个Java文件中,按理说这样比较规范,可主要原因是我是在不知道怎么在一个文件里放多个类,可见java基础有多差了...只要把类的属性改成默认的就可以了,也就是前面什么控制符都不加,采用默认的方式. Java语言程序设计中,定义类时除了要使用class 关键字说明所定义的数据类型是类,还可以在 class 之前增加若干类的修饰

java中4种修饰符访问权限的区别及详解全过程

java中4种修饰符访问权限的区别及详解全过程 http://jingyan.baidu.com/article/fedf0737700b3335ac8977ca.html java中4中修饰符分别为public.protect.default.private,他们这就说明了面向对象的封装性,所以我们要适用他们尽可能的让权限降到最低,从而安全性提高. 下面详细讲述下它们的访问权限问题.(同一个类中除内部类外所有修饰符都是可以访问的,所以下面排除这种情况.) 首先在这里把它们的访问权限表示出来: