第四讲 类和对象(1)

合集下载

第四讲+广播电视的媒介构成、传播特性及节目类型

第四讲+广播电视的媒介构成、传播特性及节目类型

北京大学继续教育学院广播电视概论课程第四讲广播电视的媒介构成、传播特性与节目类别一、广播电视的传播符号◆声音◆图像◆文字(一)声音◆声音的类别:◆语言◆音乐◆音响1.语言——内容的主要载体◆狭义层面上的语言,主要是指广播电视中的口头表达语言◆是最基本、最直接、最主要的表现手段◆最大特征是以时间顺序为线索(线性结构)语言的三种基本形态◆播音、解说语言◆新闻报道语言◆实况语言新闻播音语言◆所谓新闻播音语言是指新闻信息传播机构中承担向受众口头传播语言信息(即播音)工作的人在播讲稿件时使用的语言。

◆特点:◆与信息发出者的关系:非模仿性语言再现◆与语境的关系:非现场单向传播◆信息形式:规范性信息新闻播音语言的3种表达样式◆播报式◆上个世纪50年代到60年代,播音员的语速是每分钟160到180字,到了1980年代就变成了每分钟220字到240字,1990年代以后,变成了每分钟280字◆邢质斌 329◆张宏民 350◆李瑞英 265◆李修平 343◆罗京 280◆徐俐 340◆宣读式讲述式陈鲁豫陈晓楠新闻报道语言◆新闻信息传播机构中承担信息采集、编辑报道工作的人为报道新闻而播讲报道词、解说词时使用的语言◆区别于播音语言◆规范性标准相对降低◆采编一体化的结果3.实况语言◆实况语言是现实事件及采访活动中发生的语言事实,具有原始的真实性。

◆其本质是口语与信息源的同一性。

◆两大类别:◆与采访语境无内在关联的采访活动引发的语言——实况语言◆被事件包容的和与采访语境存在内在关联的语言——现场实况语言2.音乐节目音乐的作用:◆通过节目配乐,强化内容的情感、情绪力度,烘托气氛◆作为编辑手段,凸显、整合节目,创造蒙太奇效果◆作为节目的声音标志◆作为节目的间隔或过渡◆填充时间空档3.音响音响可以分为实况音响和音响效果两种实况音响的作用:(1)再现事实的声音感性形态,提供可感受的具体事实信息,增强传播效果。

(球场、会场上的背景声)(2)具有一定的叙述作用(3)与语言、音乐、文字、图像同步或相继各自传播不同时空的信息,创造蒙太奇效果实况音响的作用(4)实况音响可以突破视像的框限,拓展空间,增大信息容量(5)音响的连贯性可以削弱镜头衔接产生的断裂感,使信息传达与接受更为顺畅。

普通逻辑学第四讲_简单命题的基本要素——概念

普通逻辑学第四讲_简单命题的基本要素——概念

外延
量 它回答这类事物有哪些?
举例: 头一天去上学的儿子放学回家,妈妈问:“今天老 师都教你些什么” 儿子说:“他什么也没教给我,反到问我,一加二 等于几,我教他说是三。”
分析:
从本质上说:“教”这个概念所反映的本质属 性是“把知识或技能传授给他人”,孩子把他回 答老师的提问当作是他在“教”老师,显然,他 混淆了“教”与“学”这两类事物之间的本质差 别,说明他对“教”这一概念所反映的事物本质 是不明确的。 从范围上说:老师问学生“一加二等于几”, 这是一种提问的方式,属于“教”这个概念所反 映的事物范围。小孩天真地以为老师的这种提问 的教学方式不属于“教”的范围,说明他对“教” 这个概念所反映的事物范围是不明确的。
(二)词项
词项是现代逻辑的一个基本概念,它是指概念和词形的统一, 即表达概念的语词。 在现代逻辑中,凡能充当简单命题的主项或谓项的词或词组, 都叫词项。
三、概念的内涵和外延
1 、概念的内涵是指反映在概念中的对象的特有属性或本质 属性。 2 、概念的外延是指具有概念所反映的特有属性或本质属性 的对象。 内涵 质 它回答这类事物是什么样的?
鲁迅
长江 等边三角形
《阿Q正传》的作者
中国最长的内陆河流 等角三角形
a
b
所有的a都是b,并且所有的b都是a.
二、真包含于关系
真包含于关系是指一个概念的全部外延与另一个概念 的部分外延重合的关系。 例如: a 人 大学生 长方形 b 动物 学生 四边形
所有的a都是b,并且有些b是a.
a
b
三、真包含关系
第ቤተ መጻሕፍቲ ባይዱ节 概念的种类
逻辑学是根据概念的内涵或外延的一般特征把概念 分成若干种类的。
通过概念种类的研究使我们能够更好的掌握概念的 特征,有助于我们准确地使用概念。

面向对象程序设计(C++)实验一--类和对象

面向对象程序设计(C++)实验一--类和对象

实验一类和对象一、实验目的:掌握类的设计和对象的创建及相关知识点如对象数组、类聚合、友元函数、静态成员。

二、实验内容:1、设计圆类,求两个圆的位置关系;2、设计圆类和直线类,求直线与圆的位置关系;3、设计学生类,求某班学生成绩的最高分、最低分及平均分;4、设计部门类和教师类,其中部门类成员为教师类的子对象;5、设计家庭银行账户类,其中账户资金为静态数据成员,为家庭成员共享;6、设计复数类,友元函数实现复数的加减。

三、实验过程:1、根据实验题目确定需要设计哪些类、各类中包含哪些数据成员和函数成员,设计各成员的访问权限,设计数据成员的数据类型,设计函数成员的函数原型;2、给出类设计的程序实现,特别要注意重载构造函数的实现;3、在主函数中完成题目中的逻辑,一般情况下需要创建相关类的对象,通过对象对成员函数的调用或者通过对象指针对成员函数的调用完成相应的功能。

四、参考程序代码:1、设计圆类,求两个圆的位置关系#include <iostream>#include <math.h>using namespace std;class Circle{private:float a,b,r;public:Circle(float c,float d,float e){a=c;b=d; r=e;}friend void position(Circle &,Circle &);};void position(Circle &c1,Circle &c2){float n,m,p;p=sqrt((c1.a-c2.a)*(c1.a-c2.a)+(c1.b-c2.b)*(c1.b-c2.b)); n=fabs(c1.r-c2.r);m=c1.r+c2.r;if(p>m)cout << "相离";if(p==m)cout << "相切";if(p<m)cout << "相交";}int main(){float a,b,c,d,e,f;cin >> a >> b >> c >> d >> e >> f ;Circle c1(a,b,c),c2(d,e,f);position(c1,c2);return 0;}运行结果:2、设计圆类和直线类,求直线与圆的位置关系#include<iostream>#include<math.h>using namespace std;class Circle//圆类{private:float x,y,r;public:Circle(float a,float b,float c) {x=a;y=b;r=c;}float getx(){return x;}float gety(){return y;}float getr(){return r;}};class Line//直线类{private:float a,b,c;public:Line(float x,float y,float z){a=x;b=y;c=z;}void position(Circle c1){float d=fabs(a*c1.getx()+b*c1.gety()+c)/sqrt(a*a+b*b) ;//圆心到直线的距离if(d<c1.getr())cout << "相交";if((d-c1.getr())<0.000001)cout << "相切";cout << "相离";}};int main(){Line l1(3,3,4);//创建直线对象Circle c1(-23,3,7);//创建圆对象l1.position(c1);return 0;}运行结果:3、设计学生类,求某班学生成绩的最高分、最低分及平均分#include <iostream>#include <string.h>using namespace std;class Student{private:char name[20],xuehao[20];float math;public:Student(){}Student(char *na,char *xu,float ma):math(ma) {strcpy(name,na);strcpy(xuehao,xu);}void set(char *na,char *xu,float ma){math=ma;strcpy(name,na);strcpy(xuehao,xu);}char *get_name(){return name;}char *get_xuehao(){return xuehao;float get_math(){return math;}};void max_min(Student stu[],int n){Student max,min;max=min=stu[0];for(int i;i<n;i++){if(stu[i].get_math()>max.get_math())max=stu[i];if(stu[i].get_math()<min.get_math())min=stu[i];}cout << "学生成绩最高:" << max.get_name() << "," << max.get_xuehao() << "," << max.get_math() << endl;cout << "学生成绩最低:" << min.get_name() << "," << min.get_xuehao() << "," << min.get_math() << endl;}void ave(Student stu[],int n){float sum=0;for(int i=0;i<n;i++){sum=sum+stu[i].get_math();cout << "ave=" << sum/n;}int main(){char na[20],xu[20];float ma;Student stu[20];int n;cout << "请输入学生总人数"; cin >> n;for(int i=0;i<n;i++){cin >> na >> xu >> ma ; stu[i].set(na,xu,ma); }max_min(stu,n);ave(stu,n);return 0;}运行结果:4、设计部门类和教师类,其中部门类成员为教师类的子对象#include <iostream>#include <string.h>using namespace std;class Department{private:int dep_num;char dep_master[20];char dep_name[20];public:Department(){}Department(int num,char *ma,char *na){dep_num=num;strcpy(dep_master,ma);strcpy(dep_name,na);}void show(){cout << dep_num << "," << dep_master << "," << dep_name ; }};class Teacher{private:char name[20];char haoma[20];Department dep;public:Teacher(char *n,char *nu,int num,char *ma,char *na):dep(num,ma,na) {strcpy(name,n);strcpy(haoma,nu);}void show(){dep.show();cout << "," << name << "," << haoma << endl;}};int main(){Teacher hp("wanghai","12345",6,"kiki","computer");hp.show();return 0;}运行结果:5、设计家庭银行账户类,其中账户为静态数据成员,为家庭成员共享#include <iostream>#include <string.h>using namespace std;class Familymember//家庭成员类{private:char membername[10];//成员名public:static float account;//共享账户资金 Familymember(char *name);static void save(float money);//存钱 static void pay(float money);//支出 static void show(); //显示账户余额};float Familymember::account=0;Familymember::Familymember(char *name) {strcpy(membername,name);}void Familymember:: save(float money) {account= account+money;}void Familymember:: pay(float money){account= account-money;}void Familymember:: show(){cout<<account<<endl;}int main()//主函数{ Familymember husband("wang"),wife("Li"); husband.save(10000);wife.pay(3000);wife.save(5000);wife.show();husband. show();}运行结果:6、设计复数类,友元函数实现复数的加减#include <iostream>using namespace std;class Fushu{private:float ss,xs;public:Fushu(){}Fushu(float a,float b){ss=a;xs=b;}friend Fushu jiafa(Fushu &f1,Fushu &f2){return Fushu((f1.ss+f2.ss),(f1.xs+f2.xs)); }friend Fushu jian(Fushu &f1,Fushu &f2){return Fushu((f1.ss-f2.ss),(f1.xs-f2.xs)); }void show(){cout << ss << " + " << xs << "i" << endl; }};int main(){Fushu f1(2,3),f2(4,5);Fushu f3,f4;f3=jiafa(f1,f2);f4=jian(f1,f2);f3.show();f4.show();return 0;}运行结果:。

第四讲 java类与对象

第四讲 java类与对象
Circular bottom:Circle Circle名 Radius:double getArea():double
方法重载
访问权限
类和对象
对象表示现实世界中某个具体的事物。 抽象是从特定的实例中抽取共同的性质以形成一般化
概念的过程。 对象具有两方面的含义:
在现实世界中:

是客观世界中的一个实体 是一个可标识的存储区域
在计算机世界中:


类是用来描述一组具有共同状态和行为的对象的原型,
//App4_10.java Public class App4_10{ Pulbic static void main(String[] args){ Circle circle=[代码1] //创建circle对象 [代码2] Circular circular= /*创建circular对象,并将circle引用 传递给构造方法的参数c。*/ System.out.print(“圆锥的体积:%5.5f\n”,circular.getVolme); Circular.bottom.radius =100; System.out.printf(“圆锥的面积: %5.5f\n”,circular.getVolme); } } 执行[代码1]: Circle circle=new Circle(); 执行[代码]: Circular circular=new Circular(circle,20);
对象的组合
一个类的成员变量可以是某个类声明的变量,即可以是对象。当A类把B类的对象作为自已 的成员时,称A类的对象组合了B类的对象。比如:公司组合了员工,收音机组合了电池 //Circle.java Public class Circle{ Double radius; Circle(double r){ Radius=r; } Double getArea(){ return 3.14*radius*radius; } }

第7章-类和对象-1

第7章-类和对象-1

成员变量
Strpinugblnicacmlaes;s Ini/t/ia姓lV名istor {
int agep;ublic/s/t年at龄ic void main(String[] args) { //显示信息Sc方an法ner input = new Scanner(S成yst员em方.i法n);
public voidVsishiotowr(v){= new Visitor();
center.classNumber = 10;
bNumber = 10;
System.out.println("\n***初始化成员变量后***");
center.
演示示例:创建和使用对象
第22页/共45页
创建和使用对象示例5-2
问题
编写学员类,输出学员相关信息
编写教员类,输出教员相关信息
分析
学员类
姓名 年龄 班级 爱好 显示学员个人信息
教员类
姓名 专业方向 教授课程
教龄 显示教员个人信息
第23页/共45页
创建和使用对象示例5-3
示例
public class SIntuitdiaelnStu{dent { Spturbinligcnstaamtiec;void//m姓a名in(String args[]成){ 员变量
实现积分回馈功能
金卡客户积分大于1000分或普卡客户积分大于 5000,获得回馈积分500分
创建客户对象输出他得到的回馈积分
完成时间:20分钟 共性问题集中讲解
第35页/共45页
按此按钮, 狮子开始跑
按此按钮, 狮子开始叫
类的方法
电动玩具狮子 属性: 颜色:黄色
行为: 跑 叫

面向对象编程技术第四章

面向对象编程技术第四章
•面向对象编程技术第四章
说明:
3.保护类型与private类似,其差别表现在继承与派生时对派 生类的影响不同,在第七章介绍。
下页 例子
•面向对象编程技术第四章
class circle {
public: circle::circle(int r)
{ radius=r;
}
构造函数,后面介绍
int area()
1. 成员函数分类 (1)构造函数与析构函数
2.不能在定义时初始化赋值
(2)其他成员函数
定义成员时并不分配存储空间, 如 int hour=0
2. 在类中说明原形,在类外给 出函数体实现,并在函数名前 使用类名加以限定。也可以直 接在类中给出函数体
允许声明重载函数和带缺省形
参值的函数
建议定 义在类
•面向对象编程技术第四章
}
•面向对象编程技术第四章
时钟类的成员(数据成员与函数成员声明)
class Clock
{private:
数据成员
int Hour, Minute, Second;
public:
void SetTime(int NewH, int NewM, int
NewS); void ShowTime( ) ;
{
return (int)3.14*radius*radius;
ERROR! 不允
} void circle_prt()
许访问私数 据!如何解决?
{
cout<<"the private radius is:"<<radius<<endl;
} private:
int radius;

第四讲 结构化程序设计与面向对象程序设计

第四讲 结构化程序设计与面向对象程序设计
数据存储和数据流都是数据,仅仅所处的状态不同。数据存储是处于静
止状态的数据,数据流是处于运动中的数据。
2 结构化方法的基本原理
画数据流图的基本原则:自顶向下、逐层细化、完善求精。
具体步骤:
(1)绘顶层数据流图。找出对整个系统而言的输入、输出数据,确定外部实体, 它们决定了系统与 外界的接口。
2 结构化方法的基本原理
1) 数据流图(Data Flow Diagram ,DFD图)
它是描述数据加工处理过程的工具,有四种基本符号如下 图所示。
外部实体
处理
数据流
数据存储
基本符号的含义: 矩形方框表示数据的源点或终点,是系统的外部实体. 圆形表示变换数据的处理。 两条平行横线代表数据存储。 箭头表示数据流,即特定数据的流动方向。
库存书无
2 结构化方法的基本原理
2)数据字典
数据字典是对所有与系统相关的数据元素的一个有组织的列表,精确、严格地定义各个数据元素,使得用户及 开发人员对于输入、输出、存储和处理形成共同的理解。 数据字典由对下列6类元素的定义组成:数据流、数据流分量、数据结构、数据存储、处理逻辑、外部实体。数 据字典是对数据流图的详细描述。 例如: 借阅制度表 = 读者类别+允许借阅册数+罚款规定+丢失图书罚款规定 读者类别 = [ 金卡 | 银卡 | 铜卡 ] 又如: 酒店客房预订请求 = 客人数据+住宿期限+客房类别 客人数据 = 客人姓名+地址+身份证号码+[护照号码] +支付方式 身份证号码 = 15{十进制数字}18 护照号码 = 字母 + 8{十进制数字}8 字母 = "A"…"Z" 十进制数字 = "0"…"9"

模块6 类与对象(1)

模块6 类与对象(1)

一、选择1. 以下不属于类存取权限是_______B___。

A. publicB. staticC. protectedD. private2. _____D___是不可以作为该类的成员。

A.自身类对象的指针B.自身类的对象C.自身类对象的引用D.另一个类的对象3. 有关类的说法不正确的是___D____。

A. 类是一个用户自定义的数据类型B. 只有类中的成员函数才能存取类中的私有数据C. 在类中,如果不作特别说明,所有的数据均为私有类型D. 在类中,如果不作特别说明,所有的成员函数均为公有类型4. 有关类和对象的说法下列不正确的有__________。

A. 对象是类的一个实例B. 任何一个对象只能属于一个具体的类C. 一个类只能有一个对象D. 类与对象和关系和数据类型和变量的关系相似5. 若Queue是类,aQueue 是它的一个对象,p1是类对象aQueue的一个指针,那么对象aQueue可以通过_________ 类访问类的成员,类对象aQueue的指针p1可以通过________来访问类的成员。

A. ::B. .C. ;D. ->6. 关于成员函数特征,_______是错误的。

A. 成员函数一定是内联函数B. 成员函数可以重载C. 成员函数可以设置参数的默认值D. 成员函数可以是静态的7. 下列关键字中用以说明类中公有成员的是_____。

A. publicB. privateC. protectedD. friend8. 有关构造函数的说法不正确的是___________。

A. 构造函数的名字和类的名字一样;B. 构造函数在说明类的对象时自动执行;C. 构造函数无任何函数类型;D. 构造函数有且仅有一个;9. 在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用___________合适。

A. 内联函数B. 重载函数C. 递归函数D. 嵌套调用10. 关于引用,下列的说法中错误的是__________。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四讲 类的定义和对象使用
第4章 类和对象
***温故***

Java程序 数据类型 运算符和表达式 语句
本讲要点ห้องสมุดไป่ตู้

面向对象编程的基本概念 类的定义

类首部 类体

成员变量 成员方法

对象的创建与使用

创建对象 使用对象

构造方法
面向对象编程的基本概念


类和对象 类是定义对象的模板,用来描述一 类事物的共有属性和功能。 对象是一个具体的事物。 例: 汽车类—某辆汽车 学生类—某个学生 窗口类—某个具体的窗口 汽车(类) 品牌 型号 颜色 ---------加速与减速设计 转向设计 刹车设计 ……
使用对象—例5 梯形
public static void main(String[]args) { float area; Ladder ladder=new Ladder(); ladder.a=10.0f; ladder.b=20.0f; ladder.setH(5f); area=ladder.calculatArea(); System.out.println("area="+area); }
class Triangle{ float sideA,sideB,sideC,lengthSum; void setSide(float sideA,float sideB,float sideC){ this.sideA=sideA; this.sideB=sideB; this.sideC=sideC; } }

哺乳动物:胎生,能用母乳喂养幼仔。 猫:胎生,能用母乳喂养幼仔。会捉老鼠。
动物 哺乳动物 猫 狗 鸟
燕子
麻雀
4.2 类的声明
类是Java语言中的一种复合数据类型,是组成Java 程序的基本要素。Java的类具有两种基本成分:数据和行 为(状态和方法)。类的这两种成分被封装在类体中,与 外界隔开。
对象的内存模型
引用数据类型与引用变量:引用数据类型(数组、类)声明的变量为 引用变量,引用变量本身并不存放数据,而只是存放数据的地址。 Java的内存分配—Java把内存划分成两种:栈内存、堆内存
1. Person p;声明对象p时,在栈内存中分配空间,用来存放一个地址, 此时地址未指向任何数据。
}
创建和使用对象
如何调用类中定义的成员变量和成员方法,在Java中类只有实例化为 对象后才能被使用(注:main方法为特殊方法,由系统调用) ,对象 的使用“分三步走”: 1、声明对象 类名 对象名; 2、分配内存(对象的实例化) 对象名=new 类构造方法名([实参表]); 3、使用对象(对象的成员变量及方法的访问) 对象名.方法名、对象名.成员变量名 声明和初始化可以合并: 类名 对象名=new 类的构造方法名( [实参表] ); 说明: 构造方法名与类名相同,如果一个类中未定义构造方法,系统自动定义。
new person() 产生的对象 0x3000 0 age . . .
堆内存
使用对象—例4
方法二:在不同类中使用对象 class Person { . . . } class PersonTest { public static void main(String[] args) { Person p; p=new Person(); ="zhangsan"; p.age=20; p.sing(); p.out(); } }
构造方法的说明
说明形式如下: [构造方法修饰符] 方法名([形式参数列表]) {方法体} ⑴构造方法的名字与类的名字相同 ⑵构造方法没有返回类型(千万不要将返回值类型声明为void。也不能在 方法内部使用return返回一个值。)
⑶构造方法是在创建对象时,系统自动为所创建的对象初始化化的方法。
实际上Java语言为每一个类提供了一个默认的构造方法,也就是说,每 个类都有构造方法。如果不定义一个构造方法,Java语言将调用它提供 的默认的构造方法对一个新的对象进行初始化。
class Person { String name;int age;float height,weight; public Person() { age=18; name="无名"; } public Person(String name) { =name; } public Person(String name,int age,float height,float weight) { =name; this.age=age; this.height=height; this.weight=weight;
public class People { float height,weight; String name,peoNumber void speak(String s){ System.out.println(s); } void setName(String name){ =name; } }
这辆汽车(对象)
品牌:保时捷 型号:980 颜色:灰色 ------------------加速减速控制 转向控制 刹车控制
类的继承

类的继承


类的定义可以是分层次的,低层的类具有高层类的属性 和方法,称高层类为父类,低层类为子类。子类使用父 类中定义的方法和变量时,就像它们属于子类本身一样。 可以简化编程的过程,有利于代码的复用。子类除了拥 有父类的方法和变量之外,也可以定义自己方法和变量。
方法的重载
在一个类中可以定义同名的方法,但是参数的类型和 个数不能完全相同,同名的方法可以有不同的方法体从而完 成不同的任务,当调用方法时,系统会自动调用与实际参数 类型和个数相匹配的的那一个方法,这就是方法的重载。在 面向对象编程中,这种同一个名字可以有不同解释的现象称 为多态。
作业
1、编程并上机调试:(60分)
成员变量与局部变量
成员变量:是类的数据成分,在类体中直接定义,定义格式如下: [修饰符] 变量类型 成员变量名列表; 成员变量的定义可以在定义前加修饰符:public、private、protected、 final、static等,用来标识变量的使用范围和性质。 局部变量:在方法体内定义的变量和方法的参数是局部变量。 1. 变量类型可以是基本数据类型,也可以是引用数据类型,如:数组、 类类型。 2. 成员变量在整个类的内部有效,局部变量只在定义它的方法内有效。 3. 局部变量名可以和成员变量名重名,此时局部变量会隐藏成员变量, 如果想在该方法内部使用成员变量,使用关键字this。
按以下要求创建一个学生类(Student),并完成相应的操作:
1) 其成员变量:姓名(name)、年龄(age)、身高(height)、体重 (weight) 2) 成员方法:setAge—用于给变量age赋值 3) 成员方法(out):按一定格式输出各成员变量的值。 4) 构造方法:通过参数传递,分别对name、height、weight初始化。 5) 最后,创建这个类的对象,并完成对成员变量赋值和输出的操作。
public class HelloWorld//类 { public static void main(String[] args)//方法,或叫行为成分 { System.out.println(“Hello world!!”); } }
类的封装
Java程序
public class People// { String name,peoNumber float height,weight;//状态,或叫成员变量 void speak(String s)//行为,或叫成员方法 { System.out.println(s); } 类的封装
2. p=new Person();时,首先在堆内存中为对象分配存储空间,并对 各成员变量进行初始化,数值型为0,布尔型为false,引用型为 null;然后取得这个存储空间的地址(引用),将其“交给”引用 变量p,以后对这个对象的操作全由p去控制。 3. 多次使用new便会创建多个不同的对象。
在方法中定义的一些基本类型的变量和引用变量都是在方法的栈内存 中分配。当在一段代码块(也就是一对{}之间)定义一个变量时, Java就在栈中为这个变量分配内存空间,当超过变量的作用域后, Java会自动释放为该变量分配的内存空间,以前所讲的变量分配都 是在栈内存中存放的。
梯形类: class Ladder { float a,b,h; ladder(float a,float b) { this.a=a; this.b=b; } void setH(float h) { this.h=h; } float calculatArea() { return (a+b)*h/2; } }
类的定义
[修饰符] class 类名 [extends父类名] { [类成员变量声明;] 类体 [类方法声明] } 最简单的类定义 class A { }
类首
类的修饰符有:
public、private、protected、abstract、final……
extends 父类名:表示所定义的类由“父类”继承而来。 implements 接口列表:该类对指定接口进行实现。
使用对象—例3
方法一:在同一个类中使用对象 class Person { . . . public static void main(String[] args) { Person p; p=new Person(); ="zhangsan"; p.age=20; p.sing(); p 0x3000 p.out(); 栈内存 } }
成员方法
成员方法是类的行为成分,声明格式如下: [修饰符] 返回值类型 方法名([形参列表]) { [方法体] [return 表达式;] } 1、修饰符:public 、 private、protected、static、final…… 2、如果方法没有返回值,则使用void关键字。如果有返回值类型,则方 法体中必须有return语句,并且表达式类型与方法类型一致。 3、形式参数列表的形式如下: 类型名 形参名1,类型名 形参名2,…… 如:public void out(int x,int y,float f) {System.out.println(“x=”+x+”y=”+y+”f=”+f); }
相关文档
最新文档