精华内容
下载资源
问答
  • Java封装

    2018-04-24 21:19:12
    Java封装概述、优点及实例。private关键字的概述及特点。

    封装概述
    在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。

    封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。

    要访问该类的代码和数据,必须通过严格的接口控制。

    封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。

    适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。

    封装的优点
    1.隐藏实现细节,提供公共的访问方式
    2.提高了代码的复用性
    3.提高安全性。

    Java封装实例

    class Student{
        String name;
        private int age; //将age属性设置为私有的,只能本类才能访问,其他类都访问不了,如此就对信息进行了隐藏。
        public void show(){
            System.out.println("名字: " + name);
            System.out.println("年龄: " + age);
        }
        public void getAge(int a){
        age = a;
        }
    }
    
    class StudentDemo{
        public static void main(String[] args){
            Student s = new Student();
            s.show();
            System.out.println("-------------------");
            //给成员变量赋值
            s.name = "李冰冰";
        //通过方法赋值
            s.getAge(27);
            s.show();
    
        }
    }

    private关键字
    是一个权限修饰符,可以修饰成员变量和成员方法,被其修饰的成员只能在本类中被访问。

    例1:不能访问私有的成员变量

    class demo{
        int num = 10;
    }
    
    class PrivateDemo{
        public static void main(String[] args){
            demo d = new demo();
            System.out.println(d.num);
        }
    }

    输出结果:
    C:\Users\Dell\Desktop\study>java PrivateDemo
    10

    class demo{
        private int num = 10;  //用private修饰
    }
    
    class PrivateDemo{
        public static void main(String[] args){
            demo d = new demo();
            //不能访问私有的成员方法
            System.out.println(d.num);
        }
    }

    输出结果:
    C:\Users\Dell\Desktop\study>javac PrivateDemo.java
    PrivateDemo.java:8: 错误: num可以在demo中访问private
    System.out.println(d.num);
    ^
    1 个错误
    程序报错了,因为用了private关键字修饰,只能通过公共方式访问。

    修改程序:

    class demo{
        private int num = 10;  //用private修饰
        public void show(){
        System.out.println(num);
        }
    }
    
    class PrivateDemo{
        public static void main(String[] args){
            demo d = new demo();  //通过公共方式进行访问
            d.show();
        }
    }

    例2:不能访问私有的成员方法

    class demo{
        private void method(){  //定义method成员方法
            System.out.println("method");
        }  
    
    }
    
    class PrivateDemo{
        public static void main(String[] args){
            demo d = new demo();  
            d.method();  //不能访问私有的成员方法
        }
    }

    程序会报错:
    C:\Users\Dell\Desktop\study>javac PrivateDemo.java
    PrivateDemo.java:11: 错误: method()可以在demo中访问private
    d.method();
    ^
    1 个错误

    修改程序:

    class demo{
        private void method(){  //定义method成员方法
            System.out.println("method");
        }
        public void function(){
            method();
        }
    
    }
    
    class PrivateDemo{
        public static void main(String[] args){
            demo d = new demo();
            d.function();
        }
    }
    展开全文
  • Java 封装

    千次阅读 多人点赞 2018-12-24 13:25:29
    java中的封装是将代码和数据一起封装到单个单元中的过程,例如胶囊,即几种药物的混合。 我们可以通过将类的所有数据成员设为private,以在java中创建一个完全封装的类。现在我们可以使用setter和getter方法来设置和...

    封装


    java中的封装是将代码和数据一起封装到单个单元中的过程,例如胶囊,即几种药物的混合。
    我们可以通过将类的所有数据成员设为private,以在java中创建一个完全封装的类。现在我们可以使用setter和getter方法来设置和获取其中的数据。Java Bean类是完全封装类的示例。
    封装的应用

    //save as Student.java  
    package com.lch;
    
    public class Student {
        private String name;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    }
    

    该封装后只能通过set和get方法进行访问

    //save as Test.java  
    package com.lch;
    
    class Test {
        public static void main(String[] args) {
            Student s = new Student();
            s.setName("vijay");                                                            //设置set
            System.out.println(s.getName());                                       //使用get进行访问
        }
    }
    

    输出结果

    vijay
    
    展开全文
  • JAVA封装

    千次阅读 2018-05-12 22:30:07
    1、方法的重载: 方法名一样。 2.参数列表不一样(参数个数不同或参数类型不用)。... JRE:Java Runtime Environmengt :java运行时环境,包括java虚拟机和java基础库。 JDK:java Developme...

    1、方法的重载:

      方法名一样。  2.参数列表不一样(参数个数不同或参数类型不用)。
      注意:重载只跟参数有关,与返回类型无关。方法名和参数相同而返回类型不相同,不能说是重载。
    

    2、JRE 和 JDK 分别是什么意思?

      JRE:Java Runtime Environmengt :java运行时环境,包括java虚拟机和java基础库。
    
      JDK:java Development Kit : java开发工具包。
    

    3、怎样理解JAVA的平台可移植性?

       java被编译成字节码,字节码与平台无关只面向JVM编写,因为java有一个JVM(Java Virtual Machine)java虚拟机,不同操作平台有自己的JVM,所以java可以跨平台运行。
    

    4、构造方法:主要创建对象时初始化对象(给他赋值)。

       构造方法与类名相同,可重载多个方法         不能加返回值void
    

    构造方法例题1:

    public class Ex_animal {

    public static void main(String[] args) {  
        // TODO Auto-generated method stub  
    
        Animal an1 = new Animal("兔子","草",5);  
        Animal an2 = new Animal();  
        Animal an3 = new Animal(an1,an2);  
        an2.all(an3);  
    }  
    

    }
    class Animal{
    String name;
    String eat;
    int weight;
    public Animal() {
    this.name = name;
    this.eat = “猪蹄”;
    this.weight = 12;
    }
    public Animal(Animal a,Animal b) {
    this.name = b.name;
    this.eat = a.eat;
    this.weight = b.weight;

    }  
    public Animal(String name,String eat,int weight) {  
        this.name = name;  
        this.eat = eat;  
        this.weight = weight;  
    }  
    public Animal(String name,int weight) {  
        this.name = name;  
        this.weight = weight;  
    }  
    public void eat1() {  
        System.out.println("这个动物喜欢吃" + this.eat);  
    }  
    public void run() {  
        System.out.println("这个动物会跑");  
    }  
    public void all(Animal an) {  
        System.out.println("这是一只 " + this.name + ",它喜欢吃 " + an.eat + ",它重 " + an.weight +" 斤");  
    }  
    

    }

    构造方法例题2

    /**
    * 测试类
    *
    * @author lenovo64
    *这只小狗是小白,白色正在和那只小猫叫做小黑,黑色在打架
    *获胜的动物是黑色
    */
    public class Test {
    public static void main(String[] args) {

        Animal dog = new Animal("小黑", "小猫", "黑色");  
        Animal cat = new Animal("小白", "小狗", "白色");  
        String s = dog.play(cat, dog);  
        System.out.println("获胜的动物是" + s);  
    }  
    

    }

    class Animal {
    String name;
    String kind;
    int age;
    String color;
    long animalID;
    String date;

    public Animal(String name, String kind) {  
        this.name = name;  
        this.kind = kind;  
    }  
    
    public Animal(String name, String color, String kind) {  
        this.name = name;  
        this.color = color;  
        this.kind = kind;  
    }  
    
    public Animal(String name, int age, long animalID) {  
        this.age = age;  
        this.animalID = animalID;  
    }  
    
    public String play(Animal dog, Animal cat) {  
        System.out.println("这只" + dog.color + "是" + dog.name + "," + dog.kind + ",正在和那只" + cat.color + "叫做" + cat.name  
                + "," + cat.kind + ",在打架");  
        return cat.kind;  
    }  
    

    }
    //5月10日

    1、什么是封装?

    将对象信息,内部逻辑结构隐藏起来。封装就是将属性私有化,提供公有的方法访问私有属性。
    做法就是:修改属性的可见性来限制对属性的访问,并为每个属性创建一对取值(getter)方法和赋值(setter)方法,用于对这些属性的访问。
    例如:private String name;
    public String getName(){
    return;
    }
    public void setName(String name){
    this.name=name;
    }

    2、为什么需要封装?

    通过封装,可以实现对属性的数据访问限制,同时增加了程序的安全性。

    3、如何实现封装,实现封装的具体方法?

       (1)、修改属性的可见性来限制对属性的访问。
       (2)、为每个属性创建一对赋值方法和取值方法,用于对这些属性的访问。
       (3)、在赋值和取值方法中,加入对属性的存取的限制。
    

    4、权限修饰符4个级别:

    这里写图片描述

    5、static类成员:

    公用的东西,实现某个方法或属性与关联在一起。

    对象成员:

    每个对象独立拥有的东西

    6、修饰数据成员的final:

    这是final的主要用途是将该成员修饰为常量,意味着不可修改。

    展开全文
  • java 封装

    千次阅读 多人点赞 2016-04-10 14:49:05
    1.封装简介概念 将类的某些信息隐藏在类的内部,不允许外部程序直接... 为啥要对java的类进行封装? 个人认为当做一个项目的时候里面的类很多,打个比方一个大公司部门很多,老板不是每个员工都认识,但是“各部门

    1.封装简介

    概念
    将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的访问和操作。
    目的
    直接通过操控类对象来达到目的,不需要对具体实现十分了解,使类属性和方法的具体实现对外不可见。不但方便还起到了保护作用。

    封装的实现

    这里写图片描述

    先了解java的访问修饰符

    这里写图片描述

    演示代码:
    这里写图片描述

    Java 中的内部类

    问:什么是内部类呢?

    答:内部类( Inner Class )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。

    问:那为什么要将一个类定义在另一个类里面呢?清清爽爽的独立的一个类多好啊!!

    答:内部类的主要作用如下:

    1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类

    2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据(方便

    3. 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便

    问:内部类有几种呢?

    答:内部类可分为以下几种:
    ◦成员内部类
    ◦静态内部类
    ◦方法内部类
    ◦匿名内部类

    Java 中的成员内部类

    内部类中最常见的就是成员内部类,也称为普通内部类。我们来看如下代码:

    这里写图片描述

    从上面的代码中我们可以看到,成员内部类的使用方法:

    1、 Inner 类定义在 Outer 类的内部,相当于 Outer 类的一个成员变量的位置,Inner 类可以使用任意访问控制符,如 public 、 protected 、 private 等

    2、 Inner 类中定义的 test() 方法可以直接访问 Outer 类中的数据,而不受访问控制符的影响,如直接访问 Outer 类中的私有属性a

    3、 定义了成员内部类后,必须使用外部类对象来创建内部类对象,而不能直接去 new 一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类( );

    4、 编译上面的程序后,会发现产生了两个 .class 文件

    这里写图片描述

    其中,第二个是外部类的 .class 文件,第一个是内部类的 .class 文件,即成员内部类的 .class 文件总是这样:外部类名$内部类名.class

    另外,友情提示哦:

    1、 外部类是不能直接使用内部类的成员和方法滴

    这里写图片描述

    可先创建内部类的对象,然后通过内部类的对象来访问其成员变量和方法。

    2、 如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用 this 关键字。如:

    这里写图片描述

    Java 中的静态内部类

    静态内部类是 static 修饰的内部类,这种内部类的特点是:

    1、 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问

    2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员

    3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();(这里和成员内部类比起方便的多了

    这里写图片描述

    展开全文
  • 初学java封装

    千次阅读 2021-03-28 23:21:24
    初识java封装 封装的用处: 1.提高程序的安全性,保护数据 2.隐藏代码的实现细节 3.统一接口 4.增加系统可维护性 这里创建一个类 public class Package { //属性私有 private String name;//名字 private int ...
  • java怎么封装封装 什么是封装? (What is Encapsulation?) Encapsulation is one of the ways to achieve abstraction in Object-oriented programming. 封装是在面向对象编程中实现抽象的方法之一。 It’s one of ...
  • Java封装的操作MySql数据库框架

    热门讨论 2014-05-25 15:56:53
    利用java封装的操作MySql数据库的框架类JdbcUtils.java,包括增删改查四种操作,参见博文:http://blog.csdn.net/yanzi1225627/article/details/26950615
  • Echarts 的 Java 封装类库

    千次阅读 2018-04-10 21:31:13
    Echarts 的 Java 封装类库:http://www.oschina.net/p/echarts-java没想到喜欢Echarts 的 Java 封装类库的人还挺多,在源码中的测试例子一般目的只是构造官网例子的结构,这里写个比较实际的简单例子来演示如何写出...
  • java 封装一个ADB

    千次阅读 2019-07-03 12:03:27
    java封装一个ADB1.首先项目结构2.其次,核心代码2.1下载ADB程序到PC,并放入项目目录下 的adb文件夹内2.2创建指向adb目标的指令类方便开发2.3创建一个临时文件夹tem,用于保存从android中pull出的文件2.3.1 工具类...
  • Java封装接口返回统一格式

    千次阅读 2019-03-14 12:53:27
    Java封装接口返回统一格式 public class Result implements Serializable { private static final long serialVersionUID = -3948389268046368059L; private String code; private String msg; private Ob.....
  • Java封装OkHttp3工具类

    千次阅读 2019-12-04 15:03:55
    Java封装OkHttp3工具类,适用于Java后端开发者 说实在话,用过挺多网络请求工具,有过java原生的,HttpClient3和4,但是个人感觉用了OkHttp3之后,之前的那些完全不想再用了。怎么说呢,代码轻便,使用起来很很很...
  • Java封装阿里云对象存储OSS

    千次阅读 2018-08-09 19:22:41
    Java封装阿里云对象存储OSS 阿里云对象存储OSS官网 本篇博客简单封装了阿里云的OSS存储中的建立连接;本地文件,输入流和URL三种方式上传文件,获取文件的输入流,删除文件,获取所有文件列表等功能。 ...
  • selenium-java</artifactId> <version>3.5.1</version> </dependency> <!-- +++|phantomjsdriver|+++ --> <dependency> <groupId>com.github.detro.ghostdriver<...
  • Java封装如何使用?为什么要封装?封装有哪些好处? 面向对象的三个特性: 1、封装 2、继承 3、多态 封装的表现 1、方法 2、类 为什么要封装?封装的好处有哪些? 1、提高了安全性 2、提高了...
  • Android JNI : Java封装C++

    2018-01-12 18:05:15
    Java封装C++ 将C++类 和 Java类对等起来 实例化一个Java对象就相当于实例化了一个C++对象 实现原理 指针实质上也是个int或long(视平台而定)类型的变量 在jni方法中实例化c++对象后 返回给java方法 并转化为long...
  • java 封装是什么?

    万次阅读 多人点赞 2018-12-24 14:08:41
    在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。 封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。 要...
  • Java封装实例

    千次阅读 2019-05-17 15:00:58
    在面向对象程式设计方法中,封装(英语:Encapsulation)是指,一种将抽象性函式接口的实作细节部份包装、隐藏起来的方法。 封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。 要...
  • lightgbm是微软开源的一款gbdt模型库,支持二分类,多分类,lambdarank等各种不同的机器学习任务,有着训练快,支持分布式训练等等诸多优点。...最近公司有一个业务需求,需要用java封装训练好的light...
  • java封装的概念

    千次阅读 2019-07-25 03:45:42
    继承、封装、多态、抽象是面向对象编程的四大基本概念,其中封装尤为重要,因为从我们学习JAVA开始,就基本上接触了封装,因为JAVA中的所有程序都是写在类中的,类也能当做一种封装。  在面向对象中封装是指隐藏...
  • JAVE (Java Audio Video Encoder) JAVA 封装ffmpeg JAVE (Java Audio Video Encoder) 类库是一个 ffmpeg 项目的 Java 语言封装。 开发人员可以使用JAVE 在不同的格式间转换视频和音频。例如将 AVI ...
  • java封装的几个线程池介绍

    千次阅读 2017-06-09 11:09:50
    java封装的几个线程池介绍FixedThreadPoolFixedThreadPool并不是一个类,它是由Executors工具类创建出来的一个固定线程数的一个ThreadPoolEexcutor的对象,有2种实现方式。Executors.newFixedThreadPool(3);//固定3...
  • java封装和包

    千次阅读 2013-03-05 20:55:32
    通过DOS命令运行编译java文件: 1>运行,输入cmd; 2>进入DOS界面,输入cd: 文件名路径,回车 3>输入所在盘,回车 4>输入javac java文件名.java 5>输入java java文件名 如: 一、封装:将客观事物封装成...
  • JAVA封装工具类

    千次阅读 2018-08-23 23:09:28
    import java.text.SimpleDateFormat; import java.util.Date; /** * 日期时间工具类 */ public class DateUtils { /** * 时间戳转日期 * @param unixTime 时间戳 * @param dateFormat ...
  • Java 封装的详解

    万次阅读 多人点赞 2016-07-14 12:07:11
    我们日常使用的电脑主机,把cpu、内存、主板等等都封装到机箱里面去。假如没有机箱的话的出现什么问题,主机、主板全部都散落在一处,然后开机没有开机按钮,那么需要我们直接操作接跳线才能把电脑开启。这样子的话...
  • java封装数组类

    千次阅读 2017-10-08 20:17:12
    对数组的封装操作,类似于线性表中的顺序存储 /** * @author NeoSong * @date Oct 8, 2017 * 5:44:10 PM * program OF information: 1.自定义类MyArray来封装数组类 * 2.定义操作数组类的方法

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 99,137
精华内容 39,654
关键字:

java封装

java 订阅