static 关键字可以修饰成员变量,被static修饰的成员变量归属于类
static关键字可以修饰成员方法;被static修饰的成员方法可以直接使用类名调用,也可以通过对象调用,建议使用类名。
非静态的方法只能通过对象才能调用
静态的方法可以通过类名直接调用,也可以通过创建对象,使用对象名进行调用。
静态方法中不能使用非静态的成员变量
在非静态的方法中可以使用静态的成员变量
静态的内容要优先与对象存在,当类加载的时候,会随着类的加载而存在于静态区中。

局部代码块分为局部代码块和构造代码块
局部代码块:在方法内的代码块成为局部代码块;方法调用时候执行
构造代码块:在类的成员变量位置的代码块成为构造代码块;创建对象时候,在构造方法的第一行和第二行之间执行
静态代码块:使用static关键字修饰的构造代码块就是静态代码块。
静态代码块与静态成员变量显示赋值时,谁在下面谁生效。也就是说按位置执行。

Final关键字
被final修饰的内容,将一直固定不变,不可修改。
final可以修饰类,final修饰的类,将不能修饰类,但是可以继承其他非final修饰的类
final可以修饰成员变量,
根据被修饰的变量得数据类型分为两种情况:
1:修饰基本数据类型:表示成员变量得值不可改变,成为了一个常量
2:修饰引用数据类型:表示成员变量得地址值不能改变,但是改变其属性值
3:final可以修饰方法,被修饰的方法不可以被重写;(子类可以继承也可以使用)

权限修饰符
修饰类的时候只能使用两种权限
public 空的,建议使用public
修饰成员变量时,4中权限都可以使用,建议使用private
修饰成员方法时,4中权限都可以使用,建议使用public
修饰构造方法时,4中权限都可以使用,建议使用public
注意事项:abstract关键字不能与static、final和private同时出现
内部类
内部类一般用于描述的事物具有包含对应的关系时。
内部类目的就是不让外界使用
根据B类在A类中的位置不同,可以分为局部内部类和成员内部类。
局部内部类: 在A类的方法中定义的类,称为局部内部类。
成员内部类:在A类成员变量位置定义的类称为成员内部类
创建对象的格式:
外部类.内部类 对象名 = new 外部类().new内部类();
匿名内部类:
当内部类定义的时候,没有给类起名字,那么这个类就必须定义在的时候指定一个父类,且立刻需要创建出来这个没名字的类的对象
特殊的格式:
父类 对象名 = new 父类(){};
格式中的大括号就是一个类,类没名字,但是有父类,父类就是其上面的那个父类;
对象名保存的是没有名子的类的对象;
这个对象名是多态形式的对象;
只要不是final修饰的类,都可以作为父类;(包括接口和抽象类)
局部内部类不能加权限修饰符

static,final,包,访问修饰符,内部类的更多相关文章

  1. abstract关键字、final关键字、static关键字、访问修饰符详解

     abstract关键字.final关键字.static关键字.访问修饰符详解 abstract关键字: final关键字: static关键字: 访问修饰符:

  2. [Day13]static、final、匿名对象、内部类、包、修饰符、代码块

    1.final-最终 (1)final的特点 final修饰类不可以被继承,但是可以继承其他类 final修饰的方法不可以被覆盖,但父类中没有final修饰方法,子类覆盖后可以加final final ...

  3. Java 面向对象之static,final,匿名对象,内部类,包,修饰符

    01final关键字概念 A: 概述 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承, 或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这 ...

  4. 13_Java面向对象_第13天(static、final、匿名对象、内部类、包、修饰符、代码块)_讲义

    今日内容介绍 1.final 关键字 2.static 关键字 3.匿名对象 4.内部类 5.包的声明与访问 6.访问修饰符 7.代码块 01final关键字概念 A: 概述 继承的出现提高了代码的复 ...

  5. 5、static、final、匿名对象、内部类、包、修饰符、代码块

    final关键字 final关键字概念 * A: 概述 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承, 或者有些类中的部分方法功能是固定的,不想让子类重写. ...

  6. Java面向对象(static、final、匿名对象、内部类、包、修饰符、代码块)

    面向对象 今日内容介绍 u final u static u 匿名对象 u 内部类 u 包的声明与访问 u 四种访问修饰符 u 代码块 第1章 final关键字 1.1 final的概念 继承的出现提 ...

  7. java基础(13):static、final、匿名对象、内部类、包、修饰符、代码块

    1. final关键字 1.1 final的概念 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承,或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子 ...

  8. 类的高级:访问修饰符、封装、静态类成员static、内部类;

    访问修饰符: 公开访问(public):对所有子类,非子类访问: 受保护的(protected):只有同包子类.非子类.不同包子类可访问,不同包非子类不可访问: 私有的(private):只有本类可访 ...

  9. Java基础内部类、包的声名、访问修饰符、代码块整理

    内部类 14.1内部类概念 将类写在其他类的内部,可以写在其他类的成员位置和局部位置,这时写在其他类内部的类就称为内部类.其他类也称为外部类. 内部类分为成员内部类与局部内部类. 我们定义内部类时,就 ...

  10. Java中的一些关键字:static,final,和abstract,interface,以及访问修饰符说明

    1.关键字可以修饰的说明: 关键字 属性(是否可修饰) 方法(是否可修饰) 类(是否可修饰) static 是 是 是 final 是 是 是 abstract 否 是 是 2.关键字的意义: 关键字 ...

随机推荐

  1. 浅谈 var 关键字

    提起 var关键子,程序员的第一反应就是JavaScript, 事实上这个关键子在其他语言中也有被采用. 比如说C#, 比如说kotlin, 用法和JavaScript中使用差不多,作为要声明变量的前 ...

  2. HandlerMapping 和 HandlerAdapter

    HandlerMapping 负责根据request请求找到对应的Handler处理器及Interceptor拦截器,将它们封装在HandlerExecutionChain 对象中给前端控制器返回. ...

  3. 雅虎军规以及Chrome调试

    1.尽量减少HTTP请求数 80%的终端用户响应时间都花在了前端上,其中大部分时间都在下载页面上的各种组件:图片,样式表,脚本,Flash等等.减少组件数必然能够减少页面提交的HTTP请求数.这是让页 ...

  4. js如何获取地址栏的参数

    //获取参数的方法(利用正则表达式) function GetUrlParam(name){ var reg = new RegExp("(^|&)"+ name +&qu ...

  5. 紧跟腾讯大王卡:B站2233卡“基友号”即将上线

    来自B站官方的消息显示,B站在近期也将推出"基友号"功能,功能的内容是通话免费,考虑到这类互联网套餐都是中国联通在运营,因此在内容上可能也会效仿腾讯大王卡实现免费通话. 目前,B站 ...

  6. C#设计模式--简单工厂模式

    简单工厂模式是属于创建型模式,但不属于23种GOF设计模式之一. 举一个例子:一个公司有不同的部门,客户根据需要打电话到不同的部门.客户相当于上端,不同部门相当于下端.不使用简单工厂模式来实现的例子如 ...

  7. Paint the Grid Reloaded(缩点,DFS+BFS)

    Leo has a grid with N rows and M columns. All cells are painted with either black or white initially ...

  8. Caused by: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.AccessControlException):

    用windows连接hadoop集群执行mapreduce任务的时候出现以下错误: org.apache.hadoop.security.AccessControlException:Permissi ...

  9. Python爬虫入门:Urllib库的基本使用

    1.分分钟扒一个网页下来 怎样扒网页呢?其实就是根据URL来获取它的网页信息,虽然我们在浏览器中看到的是一幅幅优美的画面,但是其实是由浏览器解释才呈现出来的,实质它 是一段HTML代码,加 JS.CS ...

  10. MSSQL 备份数据库还原

    -- 完整还原RESTORE DATABASE XXXX FROM DISK = 'd:\XXXX.bak' WITH MOVE 'XXXX' TO 'D:\MSSQL\Data\XXXX.mdf', ...