java的值传递机制 1.针对于方法内变量的赋值举例: System.out.println("***********基本数据类型:****************"); int m = 10; int n = m; System.out.println("m = " + m + ", n = " + n); n = 20; System.out.println("m = " + m + ", n = "…
2016-2017-2 20155339 <Java面向对象程序设计>实验三敏捷开发与XP实践实验报告 实验内容 XP基础 XP核心实践 相关工具 实验内容 一.在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化,再研究一下Code菜单,找出一项让自己感觉最好用的功能.提交截图,加上自己学号水印. public class CodeStandard { public static void main(String [] args){ StringBuff…
一.练习:编写Java程序,将二维数组中的行列互调显示出来. 代码1为自己编写: package com.xxgpra.CH6; public class Hangliehudiao_pra4 { public static void main(String[] args) { int[][] arr1 = new int[][]{{1,2,3},{4,5,6},{7,8,9}}; Hangliehudiao_pra4 hang = new Hangliehudiao_pra4(); Syste…
方法的所属性: 从语法的角度来看:方法必须定义在类中 方法要么属于类本身(static修饰),要么属于实例 -- 到底是属于类还是属于对象? 有无static修饰 调用方法时:必须有主调对象(主语,调用者) public class MathTest{ public static void main(String[] args){ System.out.println(Math.sin(1.57)); System.out.println(Math.sin(Math.PI/2)); } } pu…
方法的定义  package oop.demon01; ​ //Demon01 类 public class Demon01 {          //main 方法     public static void main(String[] args) {             }     /*     修饰符 返回类型 方法名(....){         //方法体         return 返回值;     }         如果返回值是 void ----- return ; (…
  第一章    初识Java 1.  什么是Java? Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以其强安全性.平台无关性.硬件结构无关性.语言简洁.面向对象的特点,在网络编程语言中占据了无可比拟的优势,成为实现电子商务系统.企业管理平台.移动设备应用开发等的首选语言. 2.  java的发展 java之父——James Gosling java在1995年5月23日正式发布. ①   1996年1月23i又发布了首个java开发工具包,即J…
1. Java中的包机制(Package): 1.1   Java容许将一系列的类组合到一个叫package的集合中.package机制是一种非常好的管理工作的方式并可以将你自己的工作和系统或第三方提供的代码分开. 一个类(class)可以使用其本身所在包中的任何类和其他包中的任何public类. 注意:只能使用*号来导入一个单独的包中的所有的类.像这种java.*或java.*.*形式的包的导入都是错误的. 例如:有两个包com.a.b和com.a.b.c,那么com.a.b.*导入的类将不包…
方法,必须有其所在类或对象调用时才有意义,若方法有参数: 形参:方法声明时的参数: 实参:方法调用时实际传给形参的参数值: java的实参如何传入方法呢? 首先要明确:变量分为两大类:基础数据类型.引用数据类型. 基础数据类型参数传递方式只有一种:值传递.即将实际参数值的副本(复制品)传入方法内,而参数本身不受影响: public class Test{ public static void test(int i) { i = 6; System.out.println(i); } public…
小方法大门道 小瓜瓜作为一个Java初学者,今天跟我说她想通过一个Java方法,将外部变量通过参数传递到方法中去,进行逻辑处理,方法执行完毕之后,再对修改过的变量进行判断处理,代码如下所示. public class MethodParamsPassValue { public static void doErrorHandle() { boolean a = false; int b = 5; passBaseValue(a, b); if (a == true || b == 10) { S…
public class TestExtends { public static void main(String[]args){ int s = 10; System.out.println(System.identityHashCode(s)); s=3*s; int num = 30; System.out.println(System.identityHashCode(s)); System.out.println(System.identityHashCode(num));} 输出 4…
在通常的说法中,方法参数的传递分为两种,值传递和引用传递,值传递是指将实际参数复制一份传递到方法中, 在方法中的改动将不会影响到实际参数本身,而引用传递则是指传递的是实际参数本身,在方法中的改动将会影响到实 际参数本身.但是,在java中只有值传递,没有引用传递!那么,为什么当方法参数是基本数据类型时表现是值传递, 而当是引用类型时表现的是引用传递形式呢? Java内存区域中含有java堆和虚拟机栈两个内存区域(并不是只是将java内存区分为这两个内存区域,此外还有程 序计数器,本地方法栈以及方…
java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装目录 java.vm.specification.version Java 虚拟机规范版本 java.vm.specification.vendor Java 虚拟机规范供应商 java.vm.specification.name Java 虚拟机规范名称 java.vm.version Java 虚…
java.version Java 执行时环境版本号 java.vendor Java 执行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装文件夹 java.vm.specification.version Java 虚拟机规范版本号 java.vm.specification.vendor Java 虚拟机规范供应商 java.vm.specification.name Java 虚拟机规范名称 java.vm.version Jav…
一个由try...catch...finally引出的思考,在前面已经初步了解过不可变与可变.值传递与引用传递,在这里再次深入理解. 1.先看下面一个try..catch..finally的例子: Person.java package cn.qlq.test; public class Person { private int age; private String name; public int getAge() { return age; } public void setAge(int…
一.全局变量(global).局部变量(local).动态变量(dynamic).静态变量(static) 在类中的变量为全局变量,在方法函数中为局部变量,局部变量必须有人为赋的初值,全局变量的初值是java给的. 方法函数中局部变量会覆盖同名全局变量. 类不分静态动态,类下成员分静态动态. 静态中不能使用动态.全局变量都用静态,这样可以被主方法调用. 静态成员随类产生,随类释放,但是占内存. 二.函数function.procedure.method 可以将相似的代码汇聚到一起,用的时候直接调…
01.代码如下: package TIANPAN; class Book { // 描述的是同一个出版社的信息 private String title; private double price; private static String pub = "清华大学出版社"; // 定义一个描述出版社信息的属性 public Book(String title, double price) { this.title = title; this.price = price; } publ…
一.哪些方法不能被重写? 1.final 修饰的不能重写 2.static 修饰的不能重写 3.private 修饰的,因为私有的在子类中不可见 4.如果跨包的话,修饰符缺省的也不能被重写,因为缺省的跨包不可见 二.修饰符 1.修饰外部类 权限修饰符:public 和 缺省的 其他修饰符:final 2.方法 权限修饰符:四种 其他修饰符:final.static.native 3.成员变量 权限修饰符:四种 其他修饰符:final.static 4.代码块 修饰符:static 或 没有 三.…
/* Name : Power by :Stuart Date:2015.4.25 */ class PassOn{ //创建show方法,把i传入,输出i+1的结果 public void show(int i){ i=i+1; System.out.println(i); } } public class PassWayTest{ public static void main(String args[]){ //基本类型局部变量 int size =100; //打印出局部变量的值 Sys…
1. 单一职责原则:一类只做它该做的事. 2. 里氏替换原则:子类必须能够替换基类(父类),否则不应当设计为其子类. 3. 依赖倒换原则:设计要依赖于抽象而不是具体化. 4. 接口隔离原则:接口要小而专,不能大而全. 5. 开闭原则 :一个软件实体如类.模块和函数应该对扩展开放,对修改关闭. 6. 组合/聚合复用原则:尽量使用组合和聚合,少使用继承的关系来达到复用的原则. 7. 迪米特法则:低耦合,高内聚.…
当基本数据类型(Boolean,byte,char,String,int,Long,float,double)作为参数传递时,传递的是实参值的副本,即传的是值,无论在函数中怎么操作这个副本,实参的值是不会被改变的. 当其他对象作为参数传递时,实际上传递的是一份“引用的拷贝”. (实际传递的是对象的引用)…
20165230 <Java程序设计>实验二(Java面向对象程序设计)实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:田坤烨 学号:20165230 成绩: 指导教师:娄嘉鹏 实验日期:2018年4月16日 实验时间:15:45 - 17:20 实验序号:实验二 实验名称:Java面向对象程序设计 实验内容: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求: 没有Linu…
一.类及对象 1. 类的组成成分 属性(成员变量,Field) 方法(成员方法,函数,Method) 2. 属性 成员变量 vs 局部变量 相同点: 遵循变量声明的格式: 数据类型 变量名 = 初始化值 都有作用域 不同点: 声明的位置的不同 :成员变量:声明在类里,方法外, 局部变量:声明在方法内,方法的形参部分,代码块内 成员变量的修饰符有四个:public private protected 缺省,局部变量没有修饰符,与所在的方法修饰符相同 初始化值:一定会有初始化值,成员变量:如果在声明…
20165215 实验二 Java面向对象程序设计 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:张家佳 学号:20165215 指导教师:娄嘉鹏 实验日期:2018年4月16日 实验时间:15:35 - 18:00 实验序号:二 实验名称: Java面向对象程序设计 实验目的与要求: 完成实验.撰写实验报告,注意实验报告重点是运行结果,遇到的问题以及分析 实验报告中统计自己的PSP(Personal Software Process)时间 掌握使用IDEA完成基础编程与程序…
20165327<Java程序设计>实验二 <Java面向对象程序设计>实验报告 实验二 <Java面向对象程序设计> 一.实验报告封面 课程:Java程序设计 班级:1653 姓名:杨靖涛 学号:20165327 指导教师:娄嘉鹏 实验日期:2018.4.15 实验时间:15:35 - 17:50 实验序号:二 实验名称:Java面向对象程序设计 提交最后三个测试用例都通过的截图,截图上要有画图加水印,输入自己的学号. 实验要求: 1.没有Linux基础的同学建议先学…
2016-2017-2 20155227实验二<Java面向对象程序设计>实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 1.参考Intellj IDEA 简易教程 提交最后三个测试用例都通过的截图,截图上要有画图加水印,输入自己的学号. 2.参考 积极主动敲代码使用JUnit学习Java, 以 TDD的方式研究学习StringBuffer,提交你的单元测试用例和测试通过的截图,截…
实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验步骤 (一)单元测试 三种代码 伪代码:从意图层面来解决问题,表达自己思路的框架 产品代码:用特定编程语言将伪代码翻译成产品代码 测试代码:测试产品代码 实验 产品代码 public class MyUtil{ public static String percentage2fivegrade(int grade){ //如果成绩小于0,转成"错误&q…
一Java中的Object类 Object类是全部Java类的父类.假设一个类没有使用extendskeyword明白标识继承另外一个类,那么这个类默认 继承Object类. public class Person{ // } //等价于 public class Person extends Object{ // } Object类中的方法,适合全部子类. 1)toString()方法 在Object类中定义有public String toString()方法,其返回值是String类型.描…
一.面向对象 1.面向过程与面向对象 POP与OOP都是一种思想,面向对象是相对于面向过程而言的.面向过程,强调的是功能行为,以函数为最小单位,考虑怎么做.面向对象,将功能封装进对象,强调具备了功能的对象,以类/对象为最小单位,考虑谁来做. 程序员从面向过程的执行者转化成了面向对象的指挥者. 面向对象分析问题的思路和步骤: 选择问题所针对的现实世界中的实体 从实体中寻找解决问题相关的属性和功能 把抽象的实体用计算机语言进行描述,形成计算机世界中类的定义 将类实例化成计算机世界中的对象 2.类与对…
在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等. 在看Java中的main()方法之前,先看一个最简单的Java应用程序HelloWorld,我将通过这个例子说明Java类中main()方法的奥秘,程序的代码如下: /** * Java中的main()方法详解 *…
摘要 本文描述重载equals方法的技术,这种技术即使是具现类的子类增加了字段也能保证equal语义的正确性. 在<Effective Java>的第8项中,Josh Bloch描述了当继承类作为面向对象语言中的等价关系的基础问题,要保证派生类的equal正确性语义所会面对的困难.Bloch这样写到: 除非你忘记了面向对象抽象的好处,否则在当你继承一个新类或在类中增加了一个值组件时你无法同时保证equal的语义依然正确 在<Programming in Scala>中的第28章演示…