Java类和成员变量声明类详解

目录
  • 声明类
  • 声明成员变量
  • 访问修饰符
  • 类型
  • 变量名

声明类

定义类:

class MyClass {
    // 字段、构造函数和
    // 方法声明
}

这是一个类声明。类主体(大括号之间的区域)包含提供从类创建的对象的生命周期的所有代码:

用于初始化新对象的构造函数,提供类及其对象状态的字段的声明,以及方法来实现类及其对象的行为。

前面的类声明是最小的。它仅包含所需的类声明的那些组件。您可以在类声明的开头提供有关该类的更多信息,例如其超类的名称、是否实现任何接口等。

例如:

class MyClass extends MySuperClass implements YourInterface {
    // 字段、构造函数和
    // 方法声明
}

MyClass是MySuperClass一个子类并且它实现了YourInterface接口。

还可以在开头添加public或private之类的修饰符。修饰符public和private,它们决定了其他类是否可以访问MyClass。

一般来说,类声明可以包括这些组件,按顺序:

修饰符,例如public、private以及其他修饰符。(但是,请注意private修饰符只能应用于 嵌套类。)

类名,首字母按约定大写。

类的父类(超类)的名称(如果有),前面带有关键字extends。一个类只能扩展(子类)一个父类。

由类实现的接口的逗号分隔列表(如果有),前面带有关键字implements。一个类可以实现多个接口。

类体,用大括号 {} 括起来。

声明成员变量

有几种变量:

类中的成员变量——这些被称为字段。

方法或代码块中的变量——这些被称为局部变量。

方法声明中的变量——这些被称为参数。

该类Bicycle使用以下代码行来定义其字段:

public int cadence;
public int gear;
public int speed;

字段声明由三个部分组成,按顺序:

零个或多个修饰符,例如public或者 private。

字段的类型。

字段的名称。

public关键字将这些字段标识为公共成员,任何可以访问该类的对象都可以访问。

访问修饰符

使用的第一个(最左侧)修饰符允许您控制其他类可以访问成员字段。

public修饰符——该字段可从所有类访问。

private修饰符——该字段只能在其自己的类中访问。

protected修饰符——只能在其自己的包中访问,此外,它的类在另一个包中的子类也可以访问。

public class Bicycle {
    private int cadence;
    private int gear;
    private int speed;

    public Bicycle(int startCadence, int startSpeed, int startGear) {
        gear = startGear;
        cadence = startCadence;
        speed = startSpeed;
    }
    public int getCadence() {
        return cadence;
    }

    public void setCadence(int newValue) {
        cadence = newValue;
    }

    public int getGear() {
        return gear;
    }

    public void setGear(int newValue) {
        gear = newValue;
    }
            public int getSpeed() {
        return speed;
    }
    public void applyBrake(int decrement) {
        speed -= decrement;
    }
    public void speedUp(int increment) {
        speed += increment;
    }
}

类型

所有变量都必须有一个类型。您可以使用原始类型,例如int、float、boolean等。或者您可以使用引用类型,例如字符串、数组或对象。

变量名

所有变量,无论是字段、局部变量还是参数,都遵循语言基础课程“ 变量—命名”中介绍的相同命名规则和约定。

方法名和类名使用相同的命名规则和约定,除了以下区别

类名的第一个字母应该大写,并且 方法名称中的第一个(或唯一一个)单词应该是动词。

到此这篇关于Java类和成员变量声明类详解的文章就介绍到这了,更多相关Java成员变量内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 浅谈Java泛型让声明方法返回子类型的方法

    泛型典型的使用场景是集合.考虑到大多数情况下集合是同质的(同一类型),通过声明参数类型,可免去类型转换的麻烦.本文将讨论本人阅读Spring Security源码时遇到的一个关于泛型递归模式的问题. 声明方法返回子类型 在Spring Security的源码里有一个ProviderManagerBuilder接口,声明如下 public interface ProviderManagerBuilder<B extends ProviderManagerBuilder<B>> ext

  • java类成员中的访问级别浅析

    我们知道想要访问一个网站,根据身份的不同,会有一些使用上的限制,这就是权限级别的体现.在java的类成员中,有一些访问的级别是需要我们了解的,主要分为四种:public.private.protected.package.下面我们就这四种访问修饰符分别进行详细的介绍. 一.四种访问修饰符 1.public修饰符用于暴露域和方法,以便在类定义的包外部能访问它们.对包和类中必要的接口元素,也需要使用这个级别:main()方法必须是public的,toString()方法也必须是public的.一般不

  • Java类成员访问权限控制知识总结

    一 前言 这篇文章是很基础的一文,没多大深度,对于开发人员必然是熟练于心.本篇文章的主题是为什么java要设置类成员访问级别?其原因也很简单,就是为了面向对象的封装特性:将类成员使用不同的访问级别控制,在数据封装后,其他的类成员想要访问当前类成员,就必须要有足够的权限才能访问:这样做的目的就是我可以随意修改不想让其他类成员没有权限访问的数据,只要约定好相关的协议,不影响其他类成员访问即可: 二 权限修饰词介绍 public 意指公有的意思,其修饰的成员权限最低,表示任何成员都可以访问:注意点是一

  • 简单了解Java类成员初始化顺序

    这篇文章主要介绍了简单了解Java类成员初始化顺序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 类中包含7中成员: 1.静态变量 static 2.final静态常量 final static 3.静态代码块 static{} //多个代码块顺序执行 4.普通变量 5.普通代码块 {} //多个代码块顺序执行 6.构造方法 7.普通方法 类中成员初始化方式(排出7): 非继承类中: 首先执行1/2/3,执行顺序为顺序执行(谁在前先执行谁).

  • Java 枚举类和自定义枚举类和enum声明及实现接口的操作

    1.枚举类 注: JDK1.5之前需要自定义枚举类 JDK 1.5 新增的 enum 关键字用于定义枚举类 若枚举只有一个成员, 则可以作为一种单例模式的实现方式 1.枚举类的属性 1.枚举类对象的属性不应允许被改动, 所以应该使用 private final 修饰 2.枚举类的使用 private final 修饰的属性应该在构造器中为其赋值 3.若枚举类显式的定义了带参数的构造器, 则在列出枚举值时也必须对应的传入参数 2.自定义枚举类 如何自定义枚举类的方法写在注释里 //自定义枚举类 c

  • Java类和成员变量声明类详解

    目录 声明类 声明成员变量 访问修饰符 类型 变量名 声明类 定义类: class MyClass { // 字段.构造函数和 // 方法声明 } 这是一个类声明.类主体(大括号之间的区域)包含提供从类创建的对象的生命周期的所有代码: 用于初始化新对象的构造函数,提供类及其对象状态的字段的声明,以及方法来实现类及其对象的行为. 前面的类声明是最小的.它仅包含所需的类声明的那些组件.您可以在类声明的开头提供有关该类的更多信息,例如其超类的名称.是否实现任何接口等. 例如: class MyClas

  • Java中成员方法与成员变量访问权限详解

    记得在一次面试的笔试题中,有的面试官会要求写出具体的像pullic这些访问限定符的作用域.其实,平常我都没去系统的考虑这些访问限定符的作用域,特别是包内包外的情况,OK,笔试不行了. 这是java基本的知识,也是公司看重的,那没办法啦,我的脑袋记不住东西,那我只能把这些东西写下来方便自己温故知新,不废话了,贴代码了. 代码如下: package com.jaovo; /** *_1_ 成员变量访问权限的求证 * public private protected default(默认的权限) *自

  • 对Python 获取类的成员变量及临时变量的方法详解

    利用Python反射机制,从代码块中静态获取参数: co_argcount: 普通参数的总数,不包括参数和*参数. co_names: 所有的参数名(包括参数和*参数)和局部变量名的元组. co_varnames: 所有的局部变量名的元组. co_filename: 源代码所在的文件名. co_flags: 这是一个数值,每一个二进制位都包含了特定信息.较关注的是0b100(0x4)和0b1000(0x8),如果co_flags & 0b100 != 0,说明使用了*args参数:如果co_fl

  • Java八种基本变量作为类的成员变量的默认值操作

    目录 Java类成员变量的默认值 下面我们看看我们的八种数据类型的默认值是什么样的 总结 boolean型变量的默认值问题 1.首先分析Java中的三种不同变量的区别 2.然后判断boolean型变量的类型 Java类成员变量的默认值 基本数据类型作为类的成员变量时可以不赋予初值,在方法中输出也不会报错. 下面我们看看我们的八种数据类型的默认值是什么样的 上代码 package objectandclass; import java.awt.SecondaryLoop; public class

  • C++中使用function和bind绑定类成员函数的方法详解

    定义一个普通的类 class Test1{ public: void fun(int val){ cout<<"hello world "<<val<<endl; } }; 开始第一个测试 int main(){ Test1 t; function<void(int)> pf = std::bind(&Test1::fun,t,2); pf(4); // return 0; } 输出的值是2,说明pf传进去的4并没有什么用,在bi

  • Java常用API类之Math System tostring用法详解

    1.注意(类名不能与math重名,否则可能报错误) 1.math:可以直接拿来用的接口类 Math.abs(-90);返回参数的绝对值 Math.max(60,98)返回参数的最大值 Math.random()*100随机函数:随机输出一个数 等等 public static void main(String[] args){ int a = 1300, b = 1000; System.out.println(Math.abs(-90)); System.out.println(Math.ma

  • C++空类及没有成员变量的类的大小实例分析

    众所周知的C++中空类的大小为1,但是除了空类之外的其他一些没有成员变量的类的大小,还是有相当一部分开发人员对此有很多不明之处的. 这里我们以如下代码为例: #include using namespace std; class a {}; class b{}; class c :public a{ virtual void fun() = 0; }; class d :public b, public c{}; int main() { cout << "sizeof(a)&quo

  • java 中枚举类enum的values()方法的详解

    java 中枚举类enum的values()方法的详解 前言: 关于枚举,相信使用的已经很普遍了,现在主要写的是枚举中的一个特殊方法,values(), 为什么说特殊呢,因为在Enum 的 API 文档中也找不到这个方法.接下来就看看具体的使用. 理论上此方法可以将枚举类转变为一个枚举类型的数组,因为枚举中没有下标,我们没有办法通过下标来快速找到需要的枚举类,这时候,转变为数组之后,我们就可以通过数组的下标,来找到我们需要的枚举类.接下来就展示代码了. 首先是我们自己的枚举类. public e

  • 对python中不同模块(函数、类、变量)的调用详解

    首先,先介绍两种引入模块的方法. 法一:将整个文件引入 import 文件名 文件名.函数名( ) / 文件名.类名 通过这个方法可以运行另外一个文件里的函数 法二:只引入某个文件中一个类/函数/变量 需要从某个文件中引入多个函数或变量时,用逗号隔开即可 from 文件名 import 函数名,类名,变量名 接下来,通过一个具体的例子说明引入 模块的具体方法: 假设新建一个python包test2,里边有一个名为run.py的python文件,run.py文件里有一个名为running()的函数

  • Java Stopwatch类,性能与时间计时器案例详解

    在研究性能的时候,完全可以使用Stopwatch计时器计算一项技术的效率.但是有时想知道某想技术的性能的时候,又常常想不起可以运用Stopwatch这个东西,太可悲了. 属性: Elapsed 获取当前实例测量得出的总运行时间. ElapsedMilliseconds  获取当前实例测量得出的总运行时间(以毫秒为单位). ElapsedTicks  获取当前实例测量得出的总运行时间(用计时器计时周期表示). IsRunning   获取一个指示 Stopwatch 计时器是否在运行的值. 方法

随机推荐