Chapter_3_JAVA作业
第三章
一 .课前预习
1.1 简述概念,什么是类?什么是对象?
类:在Java中是一种重要的复合数据类型,是组成类的基本要素。(把众多的事物规划,划分成一类是人类在认识个观世界时采用的思维方法)。
对象:对象时系统中用来描述丰富按食物的一个实体,它是构成系统的一个基本单位。由属性和行为构成。
1.2 Java程序里如何定义类?
1:类的声明
2:类体
//包名
package com.hengbin.Classroom; import java.awt.Panel;
import java.rmi.server.RemoteStub; /**圆类*/
public class Circle {
/**半径*/
//定义一个静态的成员变量,static静态可直接使用类名访问。
public static int raduis;
/**圆周率*/
//非静态,只能使用对象进行访问。
//final 不可修改,为常量。
public final double PI = 3.141596; /**面积方法*/
//measure 测量
public double measure() {
double mainji = PI * Math.pow(raduis , 2);
return mainji;
} public static double measure_1() {
int s = 1;
return s;
} }
1.3 类名的规范和规则?
类名的首字母为大写
包含Java类定义的文件必须与这个类的名字相同。
1.4 Java中如何定义类的方法?
如第三题。
1.5 简述Java里变量的作用域?
成员变量:作用域是整个类
局部变量:作用域是方法内(内部的)
局部变量不同区间不允许相互间访问
内部的可以无限次访问外部的,外部的不能访问内部的。
成员变量定义有默认值,局部变量需要自己输入默认值。
Public class Car () {
Public int x ;
Public int y;
Public void set (int n1 , int n2) {
This.x = n1;
This.y = n2;
//this 表示当前对象
}
}
实例变量(类的成员变量):class A{String name;}
这里的name就是实例变量,它的作用域就是整个类。
局部变量:在一个方法的内部或者是{}中声明的变量,如果是在一个方法的内部声明的的,那么他的作用域就是整个方法,如果是在代码块中声明的那么它的作用域就是这个代码块。
方法参数:方法(包括构造方法)的参数,它的作用域是整个方法。
异常处理参数:异常处理参数和方法的参数很相似。这里的异常处理参数就是指的catch(Exception
e)中的e,它的作用域就是紧跟的 catch( Exception
1.6 创建对象及访问对象的语法分别是?
创建对象:Student s = new
Student();
语法格式:类名 对象名 = new 类名();
1.7 述面向对象编程思维的优点?
1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
3.封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
4.多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
1.8 简述静态关键字static的作用?
对应的内存地址时不会变化的,不会谁不同的实咧变量的变化而动态变化。可以用来叙事变量和方法与类
1.9 简述创建包,导入包的语法?
导入包:import java.util.*; //也可具体的导入一个包。
创建包:
二.课后复习
2.1 用你的话描述什么是类,什么是对象?
类:是抽象的,是一些事物有相识的属性和方法的统称。
对象:是具体的,有具体的属性和方法。
2.2 Java里类名,变量名,方法名的命名的规范和规则分别是?
类 名:手写字母大写,后面可以是数字,_ ,$等。
变量名:变量的名字可大小写混合用,$、字母、下划线、开头都行,后面的可以是数字、字母、下划线。(变量名首字母不能是数字)
方法名:首字母是大写。
2.3 在类里面可以定义什么?
基本:成员变量,局部变量,方法。
2.4 简称什么是局部变量,什么是(全局)成员变量?
位置不同:
定义在方法内的为局部变量
定义在方法外类中的为成员变量
内存位置不同:
成员变量:在堆内存
局部变量:在栈内存
初始化不同:
成员变量:有初始化值(如String s; s = null )
局部变量:使用之前必须赋值
方法要进栈(局部变量属于方法),对象要进堆(成员变量属于对象)
2.5 简述创建对象和访问对象的语句?
类名 对象名 = new 类名();
可访问对象的属性:对象名.属性;
方法:对象名.方法();
2.6 static能对谁使用,分别起什么作用?
变量、常量:可直接使用类访问
方法:可用类名直接访问
1、修饰函数的局部变量:
特点:有默认值0,只执行一次,运行一开始就开辟了内存,内存放在全局
2、修饰全局函数和全局变量:
特点:只能在本源文件使用
3、修饰类里面的成员变量:
特点:和1差不多,定义多个static
y,但只有一个y,不进入类的大小计算,不依赖于类对象的存在而存在(可直接调用,要进行外置声明)
4、修饰类的成员函数:
特点:f():括号里无this指针,只能调用他的本类静态函数和他的静态变量,即是用static修饰过的不依赖于类对象的存在而存在(可不进行外置声明,直接调用)
2.7 创建包时需要注意什么?
钥匙一个独一无二的包名。
包名最好全部小写。
在package com.xuhengbin.oo下创建一个子包package com.xuhengbin.oo.x.
2.8 创建一个小狗的类
package com.hengbin.Classroom; public class Dogname {
public int age; //年龄
public String name; //姓名
//自我介绍
public void jiesao(){
System.out.println("年龄"+age+"姓名"+name);
}
//
public void pian(){
System.out.println(name+"在翩翩起舞");
}
}
package com.hengbin.Classroom; public class Dog {
public static void main(String[] args) {
Dogname show = new Dogname();//创建对象(实例化)
show.age = 12; //访问成员变量,赋值
show.name = "狗";
show.jiesao(); //访问方法
show.pian();
} }
定义类可以使用的访问修饰符
Chapter_3_JAVA作业的更多相关文章
- python10作业思路及源码:类Fabric主机管理程序开发(仅供参考)
类Fabric主机管理程序开发 一,作业要求 1, 运行程序列出主机组或者主机列表(已完成) 2,选择指定主机或主机组(已完成) 3,选择主机或主机组传送文件(上传/下载)(已完成) 4,充分使用多线 ...
- SQLServer2005创建定时作业任务
SQLServer定时作业任务:即数据库自动按照定时执行的作业任务,具有周期性不需要人工干预的特点 创建步骤:(使用最高权限的账户登录--sa) 一.启动SQL Server代理(SQL Server ...
- 使用T-SQL找出执行时间过长的作业
有些时候,有些作业遇到问题执行时间过长,因此我写了一个脚本可以根据历史记录,找出执行时间过长的作业,在监控中就可以及时发现这些作业并尽早解决,代码如下: SELECT sj.name , ...
- T-SQL检查停止的复制作业代理,并启动
有时候搭建的复制在作业比较多的时候,会因为某些情况导致代理停止或出错,如果分发代理时间停止稍微过长可能导致复制延期,从而需要从新初始化复制,带来问题.因此我写了一个脚本定期检查处于停止状态的分 ...
- Python09作业思路及源码:高级FTP服务器开发(仅供参考)
高级FTP服务器开发 一,作业要求 高级FTP服务器开发 用户加密认证(完成) 多用户同时登陆(完成) 每个用户有不同家目录且只能访问自己的家目录(完成) 对用户进行磁盘配额,不同用户配额可不同(完成 ...
- 个人作业week3——代码复审
1. 软件工程师的成长 感想 看了这么多博客,收获颇丰.一方面是对大牛们的计算机之路有了一定的了解,另一方面还是态度最重要,或者说用不用功最重要.这些博客里好些都是九几年或者零几年就开始学习编 ...
- 个人作业-week2:关于微软必应词典的案例分析
第一部分 调研,评测 评测基于微软必应词典Android5.2.2客户端,手机型号为MI NOTE LTE,Android版本为6.0.1. 软件bug:关于这方面,其实有一些疑问.因为相对于市面上其 ...
- 软件工程第二次作业——git的使用
1. 参照 http://www.cnblogs.com/xinz/p/3803109.html 的第一题,每人建立一个GitHub账号,组长建立一个Project,将本组成员纳入此Porject中的 ...
- hadoop作业调度策略
一个Mapreduce作业是通过JobClient向master的JobTasker提交的(JobTasker一直在等待JobClient通过RPC协议提交作业),JobTasker接到JobClie ...
随机推荐
- HDU1671 Phone List
Phone List Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Probl ...
- 域名动态解析到动态IP
一般宽带用户的IP都是动态IP,重连之后IP可能会发生变化. 如果想在其他地方连接家里的设备,或者在家中搭建服务器,就会受到影响. 现在提供一种动态解析域名的方式,只要检测到IP的变化,那么就调用阿里 ...
- webpy学(ban)习(砖)记录
参考链接:http://blog.csdn.net/caleng/article/details/5712850 参考代码:http://files.cnblogs.com/files/tacyeh/ ...
- PG数据库中用户权限
每当在数据库中创建一个对象,所有者可以分配它访问权限.所有者通常是执行创建语句的用户.对于大多数类型的对象,初始状态是,只有所有者(或超级用户)可以修改或删除对象.为了让其他角色或用户使用它,特权或权 ...
- python远程执行dos命令
https://blog.csdn.net/huaihuaidexiao/article/details/5543240 https://blog.csdn.net/bcbobo21cn/articl ...
- css边框的一些属性
边框样式值如下:none : 无边框.与任何指定的border-width值无关hidden : 隐藏边框.IE不支持dotted : 在MAC平台上IE4+与WINDOWS和UNIX平台上IE5.5 ...
- JS sort() 方法
如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序.要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较. array.s ...
- sys.exit(main(sys.argv[1:]))
sys.argv sys.argv[]说白了就是一个从程序外部获取参数的桥梁. 首先我们需要import sys,sys是python3的一个标准库,也就是一个官方的模块.封装了一些系统的信息和接口, ...
- [phvia/dkc] Docker Compose 快速构建(LNMP+Node)运行环境
快速构建(LNMP+Node)运行环境. dkc 在此作为 docker-compose 的缩写,你可以理解为 alias dkc=docker-compose 准备 安装 docker 选择1) 从 ...
- 知识点---js监听手机返回键,回到指定界面
方法一. $(function(){ pushHistory(); window.addEventListener(“popstate”, function(e) { window.location ...