Java_Chapter6_类与对象
6.1 类与对象的概念
6.2 定义类
class Cylinder {
double radius;
int height;
double pi;
void setCylinder(double r, int h, double pi) {
radius = r;
height = h;
this.pi = pi;
}
double getArea() {
System.out.println("mian ji =" + pi * radius * radius);
return pi * radius * radius;
}
double volume() {
return getArea() * height;
}
}
定义圆柱体类
类的修饰符:public, abstract, final, 缺省 。另外,成员变量和成员方法各有自己的修饰符。
成员变量与局部变量的区别:①二者含义 ②可被什么修饰 ③存储方式 ④生存周期 ⑤没被赋初值
6.3 对象的创建与使用
将类理解成新的数据类型,将对象理解成新的变量。
Cylinder volu = new Cylinder(); //volu是对象的名字,即引用变量,存在于栈内存,它指向对象;new Cylinder()是对象实体,存在于堆内存。
package passParameter;
public class Example6_4_1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Cylinder YuanZhu = new Cylinder();
YuanZhu.setCylinder(8, 10, 3);
System.out.println("体积=" + YuanZhu.volume());
}
}
class Cylinder {
double radius;
int height;
double pi;
void setCylinder(double r, int h, double pi) {
radius = r;
height = h;
this.pi = pi;
}
double getArea() {
System.out.println("mian ji =" + pi * radius * radius);
return pi * radius * radius;
}
double volume() {
return getArea() * height;
}
}
圆柱体类,赋值使用对象
6.4 参数的传递
当参数是基本数据类型时,是传值方式调用;当参数是引用型变量时,是传址方式(其实传递的是引用变量的值,只不过该值是对象/数组的首地址)。
举例:传递值或返回类型为数组
package passParameter;
//矩阵转置
public class Example6_6 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] juzhen = { { 1, 2, 3 }, { 4, 5, 6 } };
Trans my = new Trans();
int[][] transhou = my.transw(juzhen);
for (int k = 0; k < transhou.length; k++) {
for (int j = 0; j < transhou[k].length; j++) {
System.out.print(transhou[k][j] + " ");
}
System.out.println();
}
}
}
class Trans {
int[][] transw(int[][] array) {
int i, j;
int[][] b = new int[array[0].length][array.length];
for (i = 0; i < array.length; i++) {
for (j = 0; j < array[i].length; j++) {
b[j][i] = array[i][j];
}
}
return b;
}
}
矩阵转置
6.5 匿名对象
用new创建一个对象后,不定义其引用变量,而直接调用这个对象的方法。
例:new Cylinder().setCylinder(6, 5, 3.14);
2015-10-03
Java_Chapter6_类与对象的更多相关文章
- Java编程里的类和对象
像我们搞计算机这块的,都知道这么一件事,当前的计算机编程语言主要分为两大块,一为面向过程,二为面向对象.Java就是一门纯面向对象的语言.学习了一个月左右的Java,在下对于Java当中的类和对象有了 ...
- Python - 类与对象的方法
类与对象的方法
- C++基础知识(5)---类和对象
终于把C++中的基础在前面的几篇博客中总结完了,可能还有一些语法还没有总结到,没关系,以后用到了再查资料就好.类是C++中的一个非常重要的概念,这是区别你使用的C++到底是面向过程还是面向对象的一个重 ...
- 简述JavaScript对象、数组对象与类数组对象
问题引出 在上图给出的文档中,用JavaScript获取那个a标签,要用什么办法呢?相信第一反应一定是使用document.getElementsByTagName('a')[0]来获取.同样的,在使 ...
- 前端学PHP之面向对象系列第一篇——类和对象
× 目录 [1]类 [2]成员属性[3]成员方法[4]对象[5]成员访问[6]this 前面的话 面向对象程序设计(OOP)是一种计算机编程架构.计算机程序由单个能够起到子程序作用的单元或对象组成,为 ...
- Objective-C Runtime 运行时之一:类与对象
Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一 ...
- [Java入门笔记] 面向对象编程基础(一):类和对象
什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...
- 解析Java类和对象的初始化过程
类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来 ...
- 02OC的类和对象
这章重点介绍OC的类以及对象,由于C语言是面向过程语言,而OC只是对于C语言多了一些面向对象的特性,所以OC相对于其他面向对象语言,例如C#.Java等没有那么多的语法特性,所以差别还是比较大的. 一 ...
随机推荐
- 如何用MathType编辑这三个符号
MathType是一款专门的公式编辑器,用来编辑数学物理等公式,很多期刊杂志的排版都会用到它.用MathType编辑公式的时候,完全不用考虑学习和上手的过程,打开就可以编辑出你的公式,所以这个工具对于 ...
- 手动编译svn
#!/bin/bash yum -y remove subversionmkdir -p /dist/{dist,src}cd /dist/dist/bin/rm -f openssl* subver ...
- Http服务器实现文件上传与下载(五)
一.引言 欢迎大家和我一起编写Http服务器实现文件的上传和下载,现在我回顾一下在上一章节中提到的一些内容,之前我已经提到过文件的下载,在文件的下载中也提到了文件的续下载只需要在响应头中填写Conte ...
- less-符号之逗号,空格,父级选择器
Less符号 逗号 example: .test() { box-shadow+: inset 0 0 10px #555; } .study { .test(); box-shadow+: 0 0 ...
- Trifo-VIO:Roubst and Efficient Stero Visual Inertial Odometry using Points and Lines论文笔记
这是2018-IROS上的一篇文章,亮点是作者提出了Lines特征的VIO方案,还有就是提出一个新颖的回环检测,不是用传统的基于优化的方法或者BA,另外作者还发布了一个新的用于VIO的数据集.亮点主要 ...
- AVCaptureInput和AVCaptureOutput子类
1.AVCaptureInput AVCaptureDeviceInput:用于从AVCaptureDevice对象捕获数据. AVCaptureScreenInput:从macOS屏幕上录制的一种捕 ...
- 好难忘又伤心一个非常好的学习js群解散了
不知道为什么看到web前端之天天向上这个群解散,好难过.应该可以说,这个群是我见过比较靠谱的群,大家都非常热情帮助.那些管理员管理的非常好,突然解散了.觉得好可惜,也不会因为你是菜鸟不让你加,感觉好可 ...
- spring-知识小结之注解为属性赋值
<1>.本类中的属性赋值 public class UserServiceImpl implements UserService { //按照类别赋值 // @Autowired //按照 ...
- 安装MySQL版本为mysql-installer-community-5.7.17.msi
双击MySQL安装包, 勾选复选框,点击下一步: 选择仅仅服务器模式,点击下一步: 直接点击执行: 执行完成,点击下一步: 确认配置,点击下一步: 输入用户名和密码,点击下一步: 默认选项,点击下一步 ...
- mysql 建立表之间关系 一对一 练习2
创建db5数据库 create database db5 charset=utf8; use db5; 例二:一个管理员唯一对应一个用户 用户表: id user password 1 egon xx ...