参照:https://www.cnblogs.com/ZXF6/p/11530009.html

类和对象

/**
* java 中的类和对象
*
* 一、局部变量的作用域。
*
* 二、面向对象的概述
* 但是在面向对象设计之前,广泛采用的是面向过程,面向过程只是针对于自己来解决问题。
* 面向过程的操作是以程序的基本功能实现为主,实现之后就完成了,也不考虑修改的可能性。
*
* 面向对象,更多的是要进行子模块化的设计,每一个模块都需要单独存在,并且可以被重复利用,
* 所以,面向对象的开发更像是一个具备标准的开发模式。
*
* 可维护性 需求分析
*
* 2. 在面向对象定义之中,也规定了一些基本的特征:
抽象。
* (1)封装:保护内部的操作不被破坏;
* (2)继承:在原本的基础之上继续进行扩充;
* (3)多态:在一个指定的范围之内进行概念的转换。
*
* 3. 面向对象的开发?
* 对于面向对象的开发来讲也分为三个过程:OOA(面向对象分析)、OOD(面向对象设计)、OOP(面向对象编程)。
*
* 4.类与对象是整个面向对象中最基础的组成单元。
*
* 5.对象是将来用于存储数据(实体类)
*
* 三、类中的函数?
* 无参数无返回值的函数
*
A 函数的定义
【权限修饰符】 void 函数名(){ }
static void hah(){} 四、类
类是对象的模板,对象是类的实例?
类只有通过对象才可以使用,而在开发之中应该先产生类,之后再产生对象。类不能直接使用,对象是可以直接使用的。 定义一个 people 类
他的属性有 age sex tall weight ... int age ;
string sex;
double tall;
double weight; 新建一个测试类
JavaTest 创建对象。
people p = new people();
赋值。
p.age = 15;
p.sex = "男";
... 1
*/
public class JavaObject {
public static void main(String[] args) { int b3=456;
} /**
* 局部变量 :定义到函数内部的变量 称之为 局部变量
* 局部变量的作用域:局部变量的使用范围
* 从变量定义开始 到所在的结束大括号
* 在同一作用域内 不能重复定义变量
*/
@Test
public void juBu(){
int a = 10;
if (a>5){
int b = 20;
System.out.println("b====="+b);
System.out.println(a);
} int b2 =30;
System.out.println("b2===="+b2); } /**
* 无参数无返回值的函数
* 1.权限修饰符
* 2.返回值类型
* 3.方法名 函数名 小驼峰的命名方式。。
* (): 参数列表
* {}: 函数体
*/
public void haha(){ } /**
函数的调用?
1. 非静态 对象名.函数名
Test01 test01 = new Test01();
test01.haha();
2.
*/ }

函数

/**
* 一、java中的函数?
*
* 1.【修饰符】 返回值类型 函数名(参数类型 参数名,参数类型 参数名,........) {
* 函数体
* }
*
* 2. 无参数无返回值的函数
* 定义: 【修饰符】 void 函数名() {
* 函数体
* }
*
* 为什么需要函数:函数能实现某些功能
* 函数的调用(非static) : 1 创建对象
* 2 对象名.函数名();
*
*
* 3. 有参数 无返回值的函数
* 定义: 【修饰符】 void 函数名(参数类型 参数名,参数类型 参数名,........){
* 函数体/方法体
* }
     参数和返回值 都是 数据传递的一种方式。。。
*
* 二 、java中的重载?
*
* 三、 构造函数?
* 1. 在一个类中 默认会生成一个公共无参数的构造函数(也就是说 你不写 默认会帮你加上)
*
* 2. 我们一旦自己写了构造函数 那么公共无参数的构造函数就不会自动生成了
* 所以 我们一旦添加公共有参数的构造函数 一定要确保无参数构造函数的存在
* (OCJP)
*
*
* */
public class JavaFunction { public static void main(String[] args) {
/*
函数的参数和返回值的使用 取决于实际需求。 */
int hah = add(45, 55);
System.out.println(hah); // Haha() 构造函数。
Haha haha = new Haha();
} /**
* 构造函数
*/
static class Haha{
public static void main(String[] args) {
int age ;
String name; } //自己写了构造函数 那么公共无参数的构造函数就不会自动生成了
public Haha(){ } // 自己写构造函数的作用(通过构造函数传参)
public Haha(int age,String name){
System.out.println("创建带参的构造函数 , 需要手动添加空的构造函数");
}
} /**
*1. 无参数无返回值的函数
*/ public void haha(){
System.out.println(66);
} /**
* 2.有参数 无返回值的函数
*/ static void add(int a, int b){ // 有返回值的方法 return 的内容 要和返回值类型匹配
int result = a+b; // 以 return 语句执行后的代码不执行)
} /**
* 3.有返回值没有参数
*/
int jian(){ // 函数体。
return 0;
} /**
  有参数有返回值的方法
  
*/   double getDifference(int a, int b){
      double result = a - b;
      return result;
} /**
* 在同一类中,函数名相同,参数列表(参数的个数,参数的类型,类型的顺序)不同 此时就是函数的重载
*/
int add(int a){
return a;
} /**
* 重载和 方法的返回值类型没有关系 只和参数列表有关
* 两个 add 返回值类型不同
* 报错 :已经在类中定义了add 方法
*
*
* @return
*/
int add(){
return 0;
} /**
* 假设 编译不报错 请问,你在主函数中调用 add 方法
* 问题来了 你调用的是 int ,还是 void?
* 所以 Java中 不能根据返回值类型进行重载。
*/
void add(){ }
}

Java 基础02的更多相关文章

  1. java基础-02数据类型

    基本类型 整数 byte byte 数据类型是8位.有符号的,以二进制补码表示的整数 最小值是 -128(-2^7) 最大值是 127(2^7-1) 默认值是 0 byte 类型用在大型数组中节约空间 ...

  2. Java基础02 方法与数据成员

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在Java基础01 从HelloWorld到面向对象,我们初步了解了对象(obje ...

  3. 二、Java基础--02

    作为本人首篇黑马技术博客有必要交代一下背景.个人理解博客的用作在于于己在于交流,于他在于学习,在交流学习中共同成长.下面进入正题.本文主要是介绍在做黑马入门测试时的一些问题(这个应该不是泄露题库吧). ...

  4. java基础02

    使用 myeclipse写第一个java程序 之后  右键 点击 src  创建 Class /** * package:包的声明! * 代表我们当前的java源文件在项目中的位置! * 必须位于除了 ...

  5. java基础02 数据类型转

    一.回答问题 float f1 = 6.66f; float f2 = (float) 6.67; f1==f2? /** * * @author sun * */ public class Demo ...

  6. Java基础02 方法与数据成员(转载)

    对象中的数据成员表示对象的状态.对象可以执行方法,表示特定的动作. 此外,我们还了解了类(class).同一类的对象属于相同的类型(type).我们可以定义类,并使用该定义来产生对象.   调用同一对 ...

  7. java 基础 02 数据类型、运算符、分支结构

    内容: (1)数据类型 (2)运算符 (3)分支结构 1.数据类型 java语言中的基本数据类型:byte.short.int.long.float.double.boolean.char. 1.1布 ...

  8. java基础-02:编译型和解释型

    Java程序运行机制: Java语言的编译-->解释-->运行过程 1.编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的 ...

  9. Java基础——02

    今日学习 Java API Scanner package cn.lsl.day03.demo01; //导包 import java.util.Scanner; public class demo0 ...

随机推荐

  1. 【LeetCode】931. Minimum Falling Path Sum 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 动态规划 相似题目 参考资料 日期 题目地址:htt ...

  2. codeforces 624C Graph and String

    C. Graph and String time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  3. 1067 - Combinations

    1067 - Combinations   PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB Giv ...

  4. Codeforces 931C:Laboratory Work(构造)

    C. Laboratory Work time limit per test : 1 second memory limit per test : 256 megabytes input : stan ...

  5. 【Azure 应用服务】探索在Azure上设置禁止任何人访问App Service的默认域名(Default URL)

    问题描述 总所周知,Azure App Service服务会默认提供一个 ***.chinacloudsites.cn为后缀的域名,但是该域名由上海蓝云网络科技有限公司备案,仅用于向其客户提供 Azu ...

  6. 比例阀驱动电路后级PWM滤波尖刺如何消除?PWM通过RC低通滤波器模拟DAC

    双头比例阀驱动电路,采用单片机输出2路PWM,分别驱动功率器件(U100的2和4脚),经过U100的8和10脚输出供电电源的高压PWM波形,这个高压PWM经过R104和R114分别采样后经过电流放大器 ...

  7. 使用.NET 6开发TodoList应用(17)——实现数据塑形

    系列导航及源代码 使用.NET 6开发TodoList应用文章索引 需求 在查询的场景中,还有一类需求不是很常见,就是在前端请求中指定返回的字段,所以关于搜索的最后一个主题我们就来演示一下关于数据塑形 ...

  8. Git创建本地仓库

    使用Git创建本地仓库, 可以记录文本文件变化, 这里以自己的文章为例, 利用TortoiseGit工具创建一个本地Git仓库. 1. 切换到需要创建仓库的目录下, 比如:D:\MyDoc\Devel ...

  9. Java中的对象、类、抽象类、接口的理解

    1.对象 对象是个具体的东西,有着明确的属性特征和行为特征. 例如:你手上牵着的女朋友或男朋友就是个具体的对象. 如图中的苏格兰折耳猫,特征是耳朵向下呈折叠状,有着具体的颜色(你看到的颜色),并且和其 ...

  10. MongoDB开发最佳实践

    MongoDB开发最佳实践 连接到MongoDB · 关于驱动程序:总是选择与所用之MongoDB相兼容的驱动程序.这可以很容易地从驱动兼容对照表中查到: · 如果使用第三方框架(如Spring Da ...