java之内部类

 1 public class RedCowForm {
2 static String formName ;
3 RedCow cow ; //内部类声明对象
4 RedCowForm(){}
5 RedCowForm(String s)
6 {
7 cow =new RedCow(150,112,5000);
8 formName= s;
9 }
10 public void showCowMess()
11 {
12 cow.speak();
13 }
14 class RedCow //内部类声明
15 {
16 String cowName="红牛" ;
17 int height,weight,price ;
18 RedCow(int h ,int w ,int p)
19 {
20 height=h;
21 weight=w;
22 price=p;
23 }
24 void speak()
25 {
26 System.out.println("偶是"+cowName+",身高"+height+"cm 体重: "+weight+"kg,生活在"+formName);
27 }
28 }
29 }

1 public class test {
2 public static void main(String args[])
3 {
4 RedCowForm form=new RedCowForm("红牛农场");
5 form.showCowMess();
6 form.cow.speak();
7 }
8 }

java之内部类,布布扣,bubuko.com

时间: 2024-10-19 00:27:57

java之内部类的相关文章

java之内部类(InnerClass)----非静态内部类、静态内部类、局部内部类、匿名内部类

提起java内裤类(innerClass)很多人不太熟悉,实际上类似的概念在c++里面也有,那就是嵌套类(Nested Class),关于这俩者的区别,在下文中会有对比.内部类从表面上看,就是在类中定义了一个类(下文可以看到,内部类可以在很多地方定义),而实际上并没有那么简单,乍看上去内部类似乎有些多余,他的用处可能对于初学者来说并不是那么显著,但是随着对他的深入了解,你会发现java的设计者在内裤类上面的确是用心良苦.学会使用内部类,是掌握java高级编程的一部分,他可以让你更优雅的设计你的程

Effective Java之内部类

Effective Java中对类的权限,接口等的要求,总结起来就是够用就行,不要赋予过多的访问权限,类的定义也是,如果某个类只会在类的内部使用,那就将该类定义为内部类吧. 内部类分为四种: 1.静态内部类:静态内部类就是在class前面多了static关键词的内部类,这种类和类的静态方法和静态变量一样,针对类本省进行操作,在静态内部类中可以随意访问其所在类的静态方法和静态变量. 2.非静态内部类:和静态内部类相对于,其实在类内部定义的所有东西只是受到访问修饰符的限制,所以非静态内部类和类的非静

深入理解Java之内部类

1. 为什么要使用内部类 内部类就是定义在一个类内部的类,那么为什么要使用内部类呢?主要原因有以下几点:第一,内部类中定义的方法能访问到它所在外部类的私有属性及方法:第二,外部类无法实现对同一包中的其他类隐藏,而内部类可以做到这一点:第三,匿名内部类在我们只需使用该类的实例依次时可以有效减少我们的代码量.关于以上三点,我们在下文中会举出具体例子进行进一步的说明. 2. 如何使用内部类 (1)使用内部类访问外围类私有变量 在内部类中,我们能够访问到它所在外部类中的私有实例变量及方法,请看以下代码:

java之内部类总结

内部类:如果A类需要直接访问B类中的成员,而B类又需要建立A类的对象.这时,为了方便设计和访问,直接将A类定义在B类中.就可以了.A类就称为内部类.内部类可以直接访问外部类中的成员.而外部类想要访问内部类,必须要建立内部类的对象. ----------------------------------------------------- class Outer{ int num = 4; class Inner { void show(){ System.out.println("inner s

Java之内部类、包及代码块

个人通俗理解: 1.内部类:有点类似于写在父类中的子类,根据位置不一样为不同的名字,和相应的访问方式不同:不过要访问外部类的话,需要充分运用好this(本类)的这个关键字:要是需要快速的创建子类对象的话,可以用到匿名内部类. 2.包:其实就是个放类的文件夹,当需要用的别的包里的类的时候,则需要导包.不过存在四种不同的修饰符,则对应四种访问权限(default只是理论上的,实际上是不需要写的,直接默认了) 3.代码块:按优先级的话,静态代码块的肯定在第一次使用的时候就执行这唯一的一次了,一般都是用

java之内部类详解

序言 有位小同学要我写一篇这个的总结,我说那好吧,那就动手写总结一下这个内部类的知识,感觉这个在面试中也会经常遇到,内部类.反射.集合.IO流.异常.多线程.泛型这些重要的基础知识大家都比较容易记不住.大概是自己平常用的比较少,所以经常性的会忘记,现在通过博文的方式记录下来,以后忘记可以回过头来自己看. --WH 一.什么是内部类 顾名思义,内部类就是在一个类的内部在定义一个类,比如,A类中定义一个B类,那么B类相对A类来说就称为内部类,而A类相对B类来说就是外部类了. 在一个类中有很多属性,比

Java之内部类的初级应用详解(附源码)

示例源码 在本节中我们将讲述内部类应用中的一个更典型的情况:外部类将有一个方法,该方法返回一个指向内部类的引用,就像在to()和contents()方法中看到的那样. package com.mufeng.thetenthchapter; public class Parcell2 { class Contents { private int i = 11; public int value() { return i; } } class Destination { private String

Java之内部类语法详解(附源码)

前言   可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一种非常有用的特性,因为它允许你把一些逻辑相关的类组织在一起,并控制位于内部的类的可视性.然而必须要了解,内部类与组合是完全不同的概念,这一点很重要. 在最初,内部类可能看起来比较奇怪,而且要花些时间才能在设计中轻松地使用它们.对内部类的需求并非总是很明显的,但是在描述完内部类的基本语法与语义之后,在接下来的几个章节中就会发现内部类的益处. 示例源码 package com.mufeng.thetenthchapter;

Java之内部类可以被覆盖吗详解(附源码)

前言 如果创建了一个内部类,然后继承其外围类并重新定义此内部类时,会发生什么呢?也就是说,内部类可以被覆盖吗?这看起来似乎是个很有用的思想,但是"覆盖"内部类就好像它是外围类的一个方法,其实并不起什么作用: 示例源码1 package com.mufeng.thetenthchapter; class Egg { private Yolk y; public Egg() { // TODO Auto-generated constructor stub System.out.print