Java基础全面解析:从八进制打印到重载方法理解

版权申诉
0 下载量 61 浏览量 更新于2024-07-08 收藏 501KB DOC 举报
Java总结大全文档详细涵盖了Java基础编程的各个方面,包括语法、数据类型、运算、控制结构、类与对象、方法重载以及内部类等内容。以下是一些关键知识点的详细介绍: 1. **八进制数表示法**: 在Java中,八进制数通常以0开头,如`System.out.println(010)`。尽管看起来像`o10`,但Java解释器会将其识别为八进制,输出其十进制值8。值得注意的是,八进制数用于表示二进制的前三位,010在二进制中对应十进制的8。 2. **类与对象实例**: 示例代码中提到的`class ValHold`定义了一个名为`i`的成员变量,初始值为10。创建了`ValHold`类的一个实例`v`,并将其`i`值设置为20。虽然`amethod()`方法内可以修改`v`的`i`值,但在方法外部,`v`依然指向最初的`ValHold`对象,其`i`值不会持久改变。 3. **方法重载**: Java允许根据函数名、参数列表(包括数量、类型和顺序)来定义多个具有相同返回类型的函数,这就是方法重载。重载的方法不能通过返回值来区分,只能通过参数的差异来决定调用哪个方法。例如,`public void another(ValHold v)`和`public void another(int i)`就是不同的重载方式。 4. **内部类和外部类的交互**: `classInOut`中的`Innerclass Strings`是一个内部类,它能够访问外部类`classInOut`的所有实例变量,即使这些变量是私有的。这体现了Java内部类的特性,它们可以访问外部类的私有成员,提供了一种访问保护机制。 5. **参数传递**: 当将引用类型变量作为方法参数传递时,Java采用值传递。这意味着方法内的操作不会影响到原始变量,除非特别指定(如上面提到的`v.i = 20`)。当在方法中改变了引用所指向的对象数据时,该变化不会在方法外部持久化。 这份Java总结文档全面展示了Java语言的基础核心概念,从基础语法到面向对象编程的高级特性,对于学习者来说是一份宝贵的参考资料。