类与对象

方法

=========================================

对象的概念
类与对象的关系
    万物皆对象
        属性(名词)
            对象的属性
            属性的值
        方法(动词)
            对象执行的操作
        对象:用来描述客观事物的一个实体,由一组属性和方法构成
        对象有一个特征叫封装
            对象同时具有属性和方法两项特征
            对象的属性与方法通常被封装在一起,不能分割
    从对象抽象出类
        抽取出不同对象共同的属性与方法来形成类
            例如两个人都是顾客类
        类是对象的类型
            不同于int类型:类这个类型有方法
    
    类是抽象的概念,仅仅是模板,比如说"人"
    对象是一个你能看到的,摸的着的具体实体
    
    
    宠物--现实世界的对象
    如何在计算机中描述它
    从现实中抽象出类分三步:
        1找出它的各类
        2找出它的属性
        3找出它的行为
    用面向对象的思想描述世界
        第一步:发现类    根据对象抽象出类
        第二步:发现类的属性
        第三步:发现类的方法
        //第一步定义类名
        class Dog{
        //第二步编写类的属性
            String name="旺财";//昵称
            int health=100;//健康值
            int love=0;//亲密度
            String strain="拉布拉多犬";//品种
            
        //第三步编写类的方法
            public void print(){
            //输出狗信息的代码
            }
        }
===============================

声明类的语法和步骤
类的命名与规范
类的实例化
对象的使用
null
类属性的默认初始值

类概述
    所有的java程序都以类class为组织单元
    关键字class定义自定义的数据类型
        String是jdk定义的一个类型
        class是用来自定义类型的
--------------------------------    
    声明类的语法和步骤
    写属性就相当于类的声明
        public class 类名{
            //定义属性部分
            属性1的类型 属性1;
            ......
            属性n的类型 属性n;
            //定义方法部分
            方法1;
            方法m;
        }
    public class Test{
    //声明了三个属性
    int age=10;
    String name;
    int[] nums;
    //声明方法
    public void test(){
        System.out.println("aaaaaaaa");
    }}
------------------------------
    类的实例化(创建对象)
    创建实例(对象)
        类名 实例名 = new 类名();//new后面跟的是构造方法
    引用实例成员:使用.进行以下操作
    引用实例的属性:实例名.属性
    引用实例的方法:实例名.方法名()
-------------------------------------------------

类中属性的默认值

1.数字类型(int,short,byte,long,float,double)的初始化默认值是0

2.boolean的初始化默认值是false

3.引用类型的初始化默认值是null。例如字符串类型

类中方法中的属性默认值是没有的

这是两者之间的一个重要区别。所以方法中的属性使用时一定要赋值。

package com.fgy.eclipse;

public class DogTest {

    public static void main(String[] args) {
Dog d1 = new Dog();
d1.age = 18;
d1.name = "white";
d1.pz = "11"; int age=d1.age;//既可以定义一个变量来接收实例的属性
System.out.println(d1.age);//也可以直接输出 Dog d2 = new Dog();
d2.age = 5;
d2.name = "black";
d2.pz = "22"; Dog d3=null;
d3.age=20;
}
}

===============================================

类与文件的关系
包概述
如何使用包
包的命名规范
导入类及类的搜索顺序
jdk中提供的包

类与文件的关系
    1一个文件中可以包含有多个java类
    2但是最多只有一个public类,可以没有,但是一般来说一个文件中有一个public类
    3java文件的名称要与其中的public类名一致
package com.fgy.eclipse;

public class Demo2 {
}

class fish{
}
----------------------
    包概述
    用于组织java类的一种机制
    作用:
        相关功能的类可以以包的形式组织在一起
        避免命名冲突
        访问控制
----------------------
    使用包
    package关键字
----------------------
    导入类
    import关键字,使用不同包中的类
    单类型导入:import p1.p2.classname;
    按需导入:import p1.p2.*;
    ctrl+shift+o快速导入类
    
    类的搜索顺序(按优先级依次降低):
    1当前编译单元(即同一个类的之中)
    2单类型导入(单类型就是指定的,确定的,例如import com.sh.dj.Dog)
    3同一个包中的其它类
    4按需导入(import com.sh.dj.*)
-----------------------------------

不需要显式导入的类,主要是jdk中相关的类。例如java.lang包中的类,
String是其中之一类
System也无需显式导入

以下是jdk中的部分包
java.lang  核心类
java.util  工具类,集体框架
java.io  输入与输出流
java.nio  新输入与输出流
java.sql  JDBC相关类
java.net  网络编程类
java.time  时间处理类
java.swing   UI类

=====================================

java_oop_类与对象的更多相关文章

  1. Java编程里的类和对象

    像我们搞计算机这块的,都知道这么一件事,当前的计算机编程语言主要分为两大块,一为面向过程,二为面向对象.Java就是一门纯面向对象的语言.学习了一个月左右的Java,在下对于Java当中的类和对象有了 ...

  2. Python - 类与对象的方法

    类与对象的方法

  3. C++基础知识(5)---类和对象

    终于把C++中的基础在前面的几篇博客中总结完了,可能还有一些语法还没有总结到,没关系,以后用到了再查资料就好.类是C++中的一个非常重要的概念,这是区别你使用的C++到底是面向过程还是面向对象的一个重 ...

  4. 简述JavaScript对象、数组对象与类数组对象

    问题引出 在上图给出的文档中,用JavaScript获取那个a标签,要用什么办法呢?相信第一反应一定是使用document.getElementsByTagName('a')[0]来获取.同样的,在使 ...

  5. 前端学PHP之面向对象系列第一篇——类和对象

    × 目录 [1]类 [2]成员属性[3]成员方法[4]对象[5]成员访问[6]this 前面的话 面向对象程序设计(OOP)是一种计算机编程架构.计算机程序由单个能够起到子程序作用的单元或对象组成,为 ...

  6. Objective-C Runtime 运行时之一:类与对象

    Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一 ...

  7. [Java入门笔记] 面向对象编程基础(一):类和对象

    什么是面向对象编程? 我们先来看看几个概念: 面向过程程序设计 面向过程,是根据事情发展的步骤,按进行的顺序过程划分,面向过程其实是最为实际的一种思考方式,可以说面向过程是一种基础的方法,它考虑的是实 ...

  8. 解析Java类和对象的初始化过程

    类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来 ...

  9. 02OC的类和对象

    这章重点介绍OC的类以及对象,由于C语言是面向过程语言,而OC只是对于C语言多了一些面向对象的特性,所以OC相对于其他面向对象语言,例如C#.Java等没有那么多的语法特性,所以差别还是比较大的. 一 ...

随机推荐

  1. 文件上传FormData

    <div class="modal-dialog"> <div class="modal-content"> <div class ...

  2. fftshift函数详解

    reference: https://ww2.mathworks.cn/help/matlab/ref/fftshift.html 一.实信号情况 因为实信号以fs为采样速率的信号在 fs/2处混叠, ...

  3. 【PyImageSearch】Ubuntu16.04使用OpenCV3.3.0实现图像分类

    这篇博文将会展示如何采用一个预训练的深度学习网络(模型)在ImageNet的数据集并把它当作输入图像. 首先说明,运行环境为Ubuntu16.04(或者MacOS),windows暂不支持,已经编译好 ...

  4. POJ - 2823 Sliding Window (滑动窗口入门)

    An array of size n ≤ 10 6 is given to you. There is a sliding window of size kwhich is moving from t ...

  5. synchronized(四)

    package com.bjsxt.base.sync005;/** * synchronized的重入 * @author alienware * */public class SyncDubbo1 ...

  6. day 53 练习

    1  <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...

  7. Linux平台 获取程序依赖文件

    创建sh脚本文件 =========================================================== #!/bin/sh exe=$1 #发布的程序名称des=$2 ...

  8. android 8.0 intent安装apk失败屏幕闪过

    需要做两处设置: 1.android8.0要加一条权限: <uses-permission android:name="android.permission.REQUEST_INSTA ...

  9. 【Python】多进程-共享变量(Value、string、list、Array、dict)

    #练习:未使用共享变量 from multiprocessing import Process def f(n, a): n = 3.1415927 for i in range(len(a)): a ...

  10. JS执行机制--事件循环--笔记

    JS的解析是由浏览器中的JS解析引擎完成的.JS是单线程运行,也就是说,在同一个时间内只能做一件事,所有的任务都需要排队,前一个任务结束,后一个任务才能开始.但是又存在某些任务比较耗时,如IO读写等, ...