Chapter 3 Discovering Classes and Object
Chatper 3 Discovering Classes and Object
- Exercises:
1.What is a class?
A class is a template for manufacturing objects.
2.How do you declare a class?
By providing a header followed by a body.The header minimally consists of reserved word class followed by an identifier.The body consists of a sequence of declarations placed between a pair of brace characters.
3.What is an object?
An object is a named aggregate of code and data.
4.How do you instantiate an object?
By using the new operator followed by a constructor.
5.What is a constructor?
A constructor is a block of code for constructing an object by initializing it in some manner.
6.True or false:Java creates a default noargument constructor when a class declares no constructors. true
7.What is a paremeter list and what is a parameter?
A parameter list is a round bracket-delimited and comma-separated list of zero or more parameter declarations.A parameter is a constructor or method variable that receives an expression value passed to the constructor or method when it calls.形参
8.What is an argument list and what is an argument?
An argument list is a round bracket-delimited and comma-separated list of zero or more expressions.An argument is one of these expressions whose value is passed to the correspongding parameter when a constructor or method variable is called.实参
9.True or false:you invoke another constructor by specifying the name of class followed by an argument list.
False,you invoke another constructor by specifying this followed by an argument list.
10.Define arity.参数数量
Arity is the number of arguments passed to a constructor or method or the number of operator operands.
11.What is local variable?
A local variable is a variabele that is declared in a constructor or method and is not a member of constructor or method parameter list.
12.Define lifetime.
Lifetime is a property of a variable that determines how long the variable exists.For example,local variable and parameters come into existence when a constructor or method is called and are destroyed when the cosntructor or method finishes.Similarly,an instance field comes into existence when an object is created and is destroyed when the object is garbage collected.
13.Define scope.
Scope is a property of variable that determines how accessible the variable is to code.For example,a parameter can be accessed only by the code within the constructor or method in which the parameter is declared.
14.What is encapsulation?
Encapsulation refers to the merging of state and behaviord into a single code entity.Instead of separating state and behaviors,which is done in structured programs,state and behaviors are combined into classe and object,which are the focus of object-based programs.
15.Define field.
A field is a variable declared within a class body.
16.What is the difference between an instance field and a class field?
An instance field describes some attribute of the real-world entity that an object is modeling and unique to each object, and a class field is identifies some data item that is shared by all object.
17.What is a blank final and how does it differ from a true constant?
A blank final is a real-only instance field.It differs from a true constant in that there are multiple copies of blank final (one per object) and only one true constant(one per class).
18.How do you prevent a field from be shadowed?
By changing the name of a same-named local variable or parameter or by qualifying the local variable's name or parameter's name with this or the class name followed by the the member access operator.
19.Define method.
A method is a named block of code declared within a class body.
20.What is the difference between an instance method and a class method?
An instance method describes some behavior of the real-world entity that an object is modeling and can access a specific object state,and a class method identifies some behavior that is common to all objects and can not access a specific object's state.
21.Define recursion.
Recursion is the act of a method invoking itself.
22.How do you overload a method?
You overload a method by introducing a method with the same name as an existing method but with a different parameter list into the same class.
23.What is a class inistializer,and what is an instance initializer?
A class inistializer is static-prefixed block that is introduced into a class body.An instance initializer is a block that is introduced into a class body as opposed to being introduced as the body of a method or a constructor.
24.Define garbage collector.
A garbage collector is code that runs in the background and occasionally checks for unreferenced object.
25.True or false:String[] letters = new String[2]{"A","B"}; is correct syntax. False,remove "2"
26.What is a ragged array?
A ragged array is a two-dimensional array in which each row can have a different number of columns.
- Summary:(省略)
Chapter 3 Discovering Classes and Object的更多相关文章
- TIJ——Chapter Seven:Reusing Classes
Reusing Classes 有两种常用方式实现类的重用,组件(在新类中创建存在类的对象)和继承. Composition syntax Every non-primitive object has ...
- TIJ——Chapter Two:Everything Is an Object
If we spoke a different language, we would perceive a somewhat different world. Ludwig Wittgenstein( ...
- TIJ——Chapter Ten:Inner Classes
先提纲挈领地来个总结: 内部类(Inner Class)有四种: member inner class,即成员内部类.可以访问外部类所有方法与成员变量.生成成员内部类对象的方法:OuterClass. ...
- Think Python - Chapter 18 - Inheritance
In this chapter I present classes to represent playing cards, decks of cards, and poker hands.If you ...
- Object Oriented Programming python
Object Oriented Programming python new concepts of the object oriented programming : class encapsula ...
- JavaScript- The Good Parts Chapter 6
Thee(你) I’ll chase(追逐:追捕) hence(因此:今后), thou(你:尔,汝) wolf in sheep’s array.—William Shakespeare, The ...
- Java提高学习之Object(5)
字符串形式的表现 Q1:toString() 方法实现了什么功能?A1:toString() 方法将根据调用它的对象返回其对象的字符串形式,通常用于debug. Q2:当 toString() 方法没 ...
- 第三十二节,使用谷歌Object Detection API进行目标检测、训练新的模型(使用VOC 2012数据集)
前面已经介绍了几种经典的目标检测算法,光学习理论不实践的效果并不大,这里我们使用谷歌的开源框架来实现目标检测.至于为什么不去自己实现呢?主要是因为自己实现比较麻烦,而且调参比较麻烦,我们直接利用别人的 ...
- Java:Object类详解
Java的一些特性会让初学者感到困惑,但在有经验的开发者眼中,却是合情合理的.例如,新手可能不会理解Object类.这篇文章分成三个部分讲跟Object类及其方法有关的问题. 上帝类 问:什么是Obj ...
随机推荐
- Cadence仿真利器,Cadence SI / PI Analysis – Sigrity安装及破解指南
Sigrity提供了丰富的千兆比特信号与电源网络分析技术,包括面向系统.印刷电路板(PCB)和IC封装设计的独特的考虑电源影响的信号完整性分析功能. Sigrity分析技术与Cadence Alleg ...
- 消息推送之GCM
利用GCM进行消息推送 原理 1.接收端向GCM注册registerid 2.发送端发消息给GCM服务器 这个过程需要三个参数: (1)API Key (2)registerid (3)传递的数据 3 ...
- DPDK内存管理-----(二)rte_mempool内存管理
DPDK以两种方式对外提供内存管理方法,一个是rte_mempool,主要用于网卡数据包的收发:一个是rte_malloc,主要为应用程序提供内存使用接口.本文讨论rte_mempool.rte_me ...
- Knockout.Js官网学习(text绑定)
前言 text 绑定到DOM元素上,使得该元素显示的文本值为你绑定的参数.该绑定在显示<span>或者<em>上非常有用,但是你可以用在任何元素上. 简单绑定 Today's ...
- 表格控件表头栏目(Column)与数据表头步
不用手工增加栏目的列,也就是Column,由数据库的查询结果自动创建. 用的是Delphi2010,安装了Dev,用CxGrid显示数据库查询结果.用什么控件没有关键,道理相同的.
- Delphi中TStringList类常用属性方法详解
TStrings是一个抽象类,在实际开发中,是除了基本类型外,应用得最多的. 常规的用法大家都知道,现在来讨论它的一些高级的用法. 先把要讨论的几个属性列出来: 1.CommaText 2.Delim ...
- delphi中的ClientDataSet组件的open和Execute方法各自在什么情况下用?
ClientDataSet组件本来是给midas用的,也是所谓的borland的三层数据技术,使用这个控件必须发行midas.dll挺麻烦的 open是通过应用的SQL语句为SELECTexecute ...
- c++ 类与函数中static变量初始化问题(转)
首先static变量只有一次初始化,不管在类中还是在函数中..有这样一个函数: void Foo() { ; // initialize std::cout << a; a++; } 里的 ...
- 第五节:AppDomain FirstChance异常通知
每个AppDomain都可关联一组回调方法:CLR开始查找AppDomain中的catch块时,这些回调方法就会得到调用.这些方法可执行日志记录操作.除此之外,宿主可利用这个机制监视AppDomain ...
- AngularJs记录学习02
<!doctype html> <html ng-app="myapp"> <head> <meta http-equiv="C ...