JAVA中static,this,extends,super,package

static关键字:

static可以用来修饰方法和成员变量,由static修饰的成员变量的值在该类所有实例化出的对象中通用

方法:方法分为成员方法(实例方法)和类方法(由static修饰,又叫做静态方法),可以在实例方法中操作静态变量和实例变量,可以在类方法中操作类变量

变量:变量分为成员变量和局部变量(定义在方法,语句中作用范围小),成员变量又分为类成员变量(有static修饰)和和实例成员变量

this关键字:

1.this是当前类的内部对象,所以和类的外部对象(一般来说在new一个新对象时,新new出的对象为外部对象)访问类成员变量和方法的规则一致,
 语法:this.<变量名>和this.<方法名>。
 2.this只能在当前类的内部使用,但是,不能在static修饰的方法(即类方法)中使用。
 3.this在实例方法中通常被省略,除非实例方法中包含与成员变量同名的局部变量时,
 访问成员变量需要使用this。
 4.当一个类中包含多个构造方法的时,如果其中一个构造方法要调用另外的构造方法时使用如
public class This{

  public This(){

  this("白色");    //通过this在无参的构造方法里调用有参的构造方法

  }

  public This(String color){

  this.color = color;    //将局部变量通过this赋值给成员变量

  System.out.println("" + color);

  }

}

extends关键字:

extends继承,在子类中通过class<子类>extends<父类>来获取父类中已有的变量和方法,从而提高代码的复用性类的继承

 优点:
 1、提高了代码的复用性
 2、增加类与类之间的关系,让类呈现不同的形态,这也是Java三大特性之一多态的表现
 Java继承规则:
 一个Java类最多只能继承一个父类,(单继承)
 但是java支持多重继承
方法重写与变量的隐藏:

在子类继承父类方法的基础上若要更新子类的方法,则进行方法的重写:

方法名相同,形参列表一致,返回值类型相同

若要进行变量的更新则需在子类中重新更改变量,父类的变量被隐藏
super关键字:

若要在以进行方法重写的子类中使用父类的方法则需使用关键字super

super.<方法名>
 子父类构造方法特点:
 1、在子类构造方法中第一行有一个隐式语句(super())
 2、子类中所有的构造函数默认都会访问父类无参构造函数,
 当子类构造函数有使用this调用其他构造函数(调用super()),则不用在引用父类构造方法
package关键字:

在一个工程中为了对类进行高效的管理引入了package包的概念,将同种功能类型的类放到同一个包中,包的起名规则:公司域名的倒写.工程名.功能名(包名一般小写)

若要引用不同包中的类则需关键词import引入:import + 包名(包名可在某一层次下用*代替如java.*)

import引入包时常在包名以下,注释以上的位置,包名在代码第一行

时间: 2024-11-03 22:18:10

JAVA中static,this,extends,super,package的相关文章

java中static作用详解

static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static修饰的成员变量和成员方法独立于该类的任何对象.也就是说,它不依赖类特定的实例,被类的所有实例共享. 只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们.因此,static对象可以在它的任何对象创建之前访问,无需引用任何对象. 用public修饰的static成员变量和成员方法本质是全局变量和全局方法,当声明它类

Java中static、final用法小结(转)

一.final 1.final变量: 当你在类中定义变量时,在其前面加上final关键字,那便是说,这个变量一旦被初始化便不可改变,这里不可改变的意思对基本类型来说是其值不可变,而对于对象变量来说其引用不可再变.其初始化可以在两个地方,一是其定义处,也就是说在final变量定义时直接给其赋值,二是在构造函数中.这两个地方只能选其一,要么在定义时给值,要么在构造函数中给值,不能同时既在定义时给了值,又在构造函数中给另外的值. 当函数参数为final类型时,你可以读取使用该参数,但是无法改变该参数的

java中static关键字总结

Java中,static关键字一般情况下有四种用法: 用来修饰一个变量. 用来修饰一个方法. 用来修饰一个内部类. 用来修饰一段代码块. 1 public class Student{ 2 String name; 3 static int count;//static修饰的变量 4 static{//static修饰的代码块 5 count=0; 6 } 7 public static void playGame(){//static修饰的方法 8 System.out.println("我爱

Java中static、final用法小结

一.final 1.final变量: 当你在类中定义变量时,在其前面加上final关键字,那便是说,这个变量一旦被初始化便不可改变,这里不可改变的意思对基本类型来说是其值不可变,而对于对象变量来说其引用不可再变.其初始化可以在两个地方,一是其定义处,也就是说在final变量定义时直接给其赋值,二是在构造函数中.这两个地方只能选其一,要么在定义时给值,要么在构造函数中给值,不能同时既在定义时给了值,又在构造函数中给另外的值. 当函数参数为final类型时,你可以读取使用该参数,但是无法改变该参数的

java中static、final、static final的区别

final可以修饰:属性,方法,类,局部变量(方法中的变量) final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变. final修饰的属性跟具体对象有关,在运行期初始化的final属性,不同对象可以有不同的值. final修饰的属性表明是一个常数(创建后不能被修改). final修饰的方法表示该方法在子类中不能被重写,final修饰的类表示该类不能被继承. 对于基本类型数据,final会将值变为一个常数(创建后不能被修改):但是对于对象句柄(亦可称作引用或者指针),fin

Java中static作用及用法详解

1.1概述: static是静态修饰符,什么叫静态修饰符呢?大家都知道,在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的,而所谓静态就是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间,也就是只要程序在运行,那么这块内存就会一直存在.这样做有什么意义呢?在Java程序里面,所有的东西都是对象,而对象的抽象就是类,对于一个类而言,如果要使用他的成员,那么普通情况下必须先实例化对象后,通过对象的引用才能够访问这些成员,但是用static修饰的成员可以通过类名加".&q

java中static的使用

我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,有时候,我们希望该类的所有成员共享一个成员.这时可以用static来修饰. Java中static作为修饰符,可以用来修饰变量.方法.代码块. 1.静态方法 被static修饰的变量成为静态变量,又可以成为静态成员或类成员.它属于整个类所有,而不是某个对象所有,被类的所有对象共享.类变量在类加载的时候初始化分配空间,而且只被初始化一次,直到该类被卸载时才将资源回收. 静态成员可以使用类名直接访问,也可以使用对象进行访问.在程序中任何

Java中static final 与 final 的区别(转载)

转自:http://advance0683.iteye.com/blog/1107732 Java中static final 与 final 的区别: 例子: Java代码 import java.util.Random; //这个例子想说明一下static final 与 final的区别 public class StaticAndFinalTest { private static Random rand = new Random(47); //47作为随机种子,为的就是产生随机数. pr

如何理解 Java 中的 &lt;T extends Comparable&lt;? super T&gt;&gt;

1 <T extends Comparable<T>> 和 <T extends Comparable<? super T>> 有什么不同 <T extends Comparable<T>> 类型 T 必须实现 Comparable 接口,并且这个接口的类型是 T.只有这样,T 的实例之间才能相互比较大小.例如,在实际调用时若使用的具体类是 Dog,那么 Dog 必须 implements Comparable<Dog>

Java中关键词之this,super的使用

一.this关键词介绍. 说明:该知识点仅仅限于本人对其了解的范围. package com.study.java.oop; /** * 核心点:"this是指向对象本身的一个指针" * 出现的位置: 只能用于方法的方法体内(且该方法是只能是类中的非静态方法) * 静态方法和静态块中绝对不可使用 * 使用的方式: * this(参数) >>> 调用的是类的构造方法 有参数调用的是 有参构造 无参 调用无参构造 * this.成员变量名 >>>调用类