【翻译】The Java Tutorial中的Class概念

简介:
原文链接地址:
原文:

What Is a Class?

A class is a blueprint or prototype from which objects are created. This section defines a class that models the state and behavior of a real-world object. It intentionally focuses on the basics, showing how even a simple class can cleanly model state and behavior.
 
什么是类?
       类是对象的蓝图或者原型。这一部分会详细说明类是怎样模拟现实世界中对象的状态和行为的。它是基础,它会告诉你就是一个简单的类也能很好地模拟对象的状态和行为。
        在现实世界中,你会发现很多独特的对象具有相同的种类。比如成千上万辆自行车,制作方法和模型都是相同的。每一个辆自行车都是从相同的设备和图纸中制造出来的,所以具有相同的组件。在面向对象的术语中,我们就说这辆自行车是自行车这个对象的中的一个实例。类就是对象的蓝图。
       下面给出自行车这个类的用法:
 
class Bicycle { 

              int cadence = 0; 
              int speed = 0; 
              int gear = 1; 

              void changeCadence( int newValue) { 
                        cadence = newValue; 
             } 

              void changeGear( int newValue) { 
                        gear = newValue; 
             } 

              void speedUp( int increment) { 
                        speed = speed + increment;        
             } 

              void applyBrakes( int decrement) { 
                        speed = speed - decrement; 
             } 

              void printStates() { 
                        System.out.println( "cadence:"+cadence+ " speed:"+speed+ " gear:"+gear); 
             } 


 
       上面的Java语法可能对于来说是很新鲜的,但是这个类的设计是基于前面所讨论的自行车对象。字段cadence,speed和gear都是对象的状态,方法changeCadence,changeGear,seepUp等等定义了与外界的交互。
 
        你可能注意到自行车类不包含main方法。这是因为上面的不是一个完整的应用程序,它仅仅是可能会在自行车对象中被使用的蓝图。它的功能是创建一个自行车的新对象,这个对象可以在其他的程序中使用。
 
       下面这个BicycleDemo类就是创建两个单独的自行车对象,还要调用它们的方法:

 
class BicycleDemo { 
     public  static  void main(String[] args) { 

                     // Create two different Bicycle objects 
                    Bicycle bike1 =  new Bicycle(); 
                    Bicycle bike2 =  new Bicycle(); 

                     // Invoke methods on those objects 
                    bike1.changeCadence(50); 
                    bike1.speedUp(10); 
                    bike1.changeGear(2); 
                    bike1.printStates(); 

                    bike2.changeCadence(50); 
                    bike2.speedUp(10); 
                    bike2.changeGear(2); 
                    bike2.changeCadence(40); 
                    bike2.speedUp(10); 
                    bike2.changeGear(3); 
                    bike2.printStates(); 
    } 


 
      其打印的结果是:
 cadence:50 speed:10 gear:2
 cadence:40 speed:20 gear:3
 









本文转自 sundunjam 51CTO博客,原文链接:http://blog.51cto.com/sunspot/132583,如需转载请自行联系原作者
目录
相关文章
|
4月前
|
Java 程序员
Java中的继承和多态:理解面向对象编程的核心概念
【8月更文挑战第22天】在Java的世界中,继承和多态不仅仅是编程技巧,它们是构建可维护、可扩展软件架构的基石。通过本文,我们将深入探讨这两个概念,并揭示它们如何共同作用于面向对象编程(OOP)的实践之中。你将了解继承如何简化代码重用,以及多态如何为程序提供灵活性和扩展性。让我们启程,探索Java语言中这些强大特性的秘密。
|
28天前
|
Java 编译器 Maven
Java“class file contains wrong class”解决
当Java程序运行时出现“class file contains wrong class”错误,通常是因为类文件与预期的类名不匹配。解决方法包括:1. 确保类名和文件名一致;2. 清理并重新编译项目;3. 检查包声明是否正确。
|
28天前
|
算法 Java 数据库连接
Java连接池技术,从基础概念出发,解析了连接池的工作原理及其重要性
本文详细介绍了Java连接池技术,从基础概念出发,解析了连接池的工作原理及其重要性。连接池通过复用数据库连接,显著提升了应用的性能和稳定性。文章还展示了使用HikariCP连接池的示例代码,帮助读者更好地理解和应用这一技术。
40 1
|
2月前
|
Java 程序员 编译器
在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。
在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。本文通过示例详细解析了保留字的定义、作用及与自定义标识符的区别,帮助开发者避免因误用保留字而导致的编译错误,确保代码的正确性和可读性。
50 3
|
3月前
|
Java
java基础(4)public class 和class的区别及注意事项
本文讲解了Java中`public class`与`class`的区别和注意事项。一个Java源文件中只能有一个`public class`,并且`public class`的类名必须与文件名相同。此外,可以有多个非`public`类。每个类都可以包含一个`main`方法,作为程序的入口点。文章还强调了编译Java文件生成`.class`文件的过程,以及如何使用`java`命令运行编译后的类。
46 3
java基础(4)public class 和class的区别及注意事项
|
2月前
|
Java
让星星⭐月亮告诉你,Java synchronized(*.class) synchronized 方法 synchronized(this)分析
本文通过Java代码示例,介绍了`synchronized`关键字在类和实例方法上的使用。总结了三种情况:1) 类级别的锁,多个实例对象在同一时刻只能有一个获取锁;2) 实例方法级别的锁,多个实例对象可以同时执行;3) 同一实例对象的多个线程,同一时刻只能有一个线程执行同步方法。
19 1
|
2月前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
49 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
3月前
|
Java
java的class类
java的class类
37 5
|
3月前
|
监控 算法 Java
深入理解Java中的垃圾回收机制在Java编程中,垃圾回收(Garbage Collection, GC)是一个核心概念,它自动管理内存,帮助开发者避免内存泄漏和溢出问题。本文将探讨Java中的垃圾回收机制,包括其基本原理、不同类型的垃圾收集器以及如何调优垃圾回收性能。通过深入浅出的方式,让读者对Java的垃圾回收有一个全面的认识。
本文详细介绍了Java中的垃圾回收机制,从基本原理到不同类型垃圾收集器的工作原理,再到实际调优策略。通过通俗易懂的语言和条理清晰的解释,帮助读者更好地理解和应用Java的垃圾回收技术,从而编写出更高效、稳定的Java应用程序。
|
4月前
|
Java Docker 微服务
微服务架构的概念、特点以及如何在Java Web开发中实现微服务。
微服务架构的概念、特点以及如何在Java Web开发中实现微服务。
98 1