使用Java实现面向对象编程(11)

约瑟夫环问题:

package com.zb.test;

public class Yuesefu

{
  public static void main(String[] args)

  {
    //500个人数组
    boolean[] b = new boolean[500];
    for(int i = 0;i < b.length;i++)

    {
      b[i] = true; //表示所有人都是活的
    }
    int sum = b.length; //总数为500
    int index = 0; //人数的下标
    int count = 0; //报数的变量
    while(sum > 1)//当存活人数>1人

    { 
      if(b[index])//如果当前这人是活着的

      { 
        count++; //往上报数
        if(count == 3) //如果报到3 枪毙

        { 
          sum--; //总数-1
          b[index] = false; //当前这人死亡
          count = 0; //重新开始报数
        }
      }
      index++; //下标移到下一个人
      if(index == 500) //如果下标到500表示 1圈已经结束 重新计数

      {
        index = 0;
      }
    }
    for(int i = 0;i < b.length;i++)

    {
      if(b[i])

      {
        System.out.println("活着的位置是:"+(i+1));
      }
    }
  }
}

方法

getMethod:         获取类中以public 修饰的方法    如果存在继承  父类的方法也就存在于子类

getDeclareMethod:   获取类中声明的方法 即使以private修饰

时间: 2024-10-25 22:20:44

使用Java实现面向对象编程(11)的相关文章

关于java中面向对象编程的一点点小感悟!!!

断断续续接触java已经有半年的时间,当然中间也有过很多事情,不得已而中断了java的学习.当初刚刚接触到java的时候,总是不能理解java的面向对象编程优点.平常生活中我们做事情的思维方式都是面向过程的,就拿最简单的我要上一个培训班来说: 第一步:当然得是网上.贴吧.朋友的口中来了解这个辅导班,以此来决定是否需要上这个辅导班. 第二步:当然就是当了解完成之后,对这个辅导班比较满意.自己就需要做准备来达到辅导班的要求,比如说学费.复习知识,准备参加辅导班规定的考试. 第三步:当然就是付诸实践,

JAVA的面向对象编程--------课堂笔记

JAVA的面向对象编程--------课堂笔记 面向对象主要针对面向过程. 面向过程的基本单元是函数.   什么是对象:EVERYTHING IS OBJECT(万物皆对象)   所有的事物都有两个方面: 有什么(属性):用来描述对象. 能够做什么(方法):告诉外界对象有那些功能. 后者以前者为基础. 大的对象的属性也可以是一个对象.   为什么要使用面向对象: 首先,面向对象符合人类看待事物的一般规律. 对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节. 方法的定义非常重要.方法有参

JAVA的面向对象编程

面向对象主要针对面向过程. 面向过程的基本单元是函数. 什么是对象:EVERYTHING IS OBJECT(万物皆对象) 所有的事物都有两个方面: 有什么(属性):用来描述对象. 能够做什么(方法):告诉外界对象有那些功能. 后者以前者为基础. 大的对象的属性也可以是一个对象. 为什么要使用面向对象: 首先,面向对象符合人类看待事物的一般规律. 对象的方法的实现细节是屏蔽的,只有对象方法的实现者了解细节. 方法的定义非常重要.方法有参数,也可能有返回值. 注意区分:对象(本身).对象的实现者.

Java基础--面向对象编程1(类与对象)

1.类(class)的定义 类是对一组具有相同特征和行为的对象的抽象描述. 在程序中,引入类的概念,就是为了快速生成更多的具有相同特性和行为的事物. 2.对象(object)的定义 对象是类的具体实现,表示一个独立的.唯一的个体,具有属性和方法. 3.属性和方法 属性:在程序中类或者对象具有的特征,具体对象的属性拥有的数据称为属性值. 方法:类或者对象的行为. 4.定义类和对象 创建1个Student的类,类的属性有学号(sid).姓名(name).年龄(age).性别(gender),类中声明

Accp8.0 S2 02使用Java实现面向对象编程

对象和封装类和对象使用对象的目地:用计算机语言描述现实世界用计算机语言解决现实世界的问题使用面向对象的好处:交流更加流畅提高设计和开发效率怎样实现面向对象编程找出类找出属性(变量)找出行为(方法)类图:"+"为public 公开的"-"为private私有的this关键字,是对一个对象的默认引用,用以区分同名成员变量this关键字,代表当前对象(当前成员变量)构造方法和重载首先对象实例化构造方法无参构造语法访问修饰符 构造方法名(){}作用给成员属性默认赋初始值有参

使用Java实现面向对象编程——第四章 异常

1. 接口:接口就是给出一些没有内容的方法,封装到一起,到某个类要使用的时候,在根据具体情况把这些方法写出来. 接口是更加抽象的抽象的类, 抽象类里的方法可以有方法体, 接口里的所有方法都没有方法体. 接口体现了程序设计的多态和高内聚低偶合的设计思想. 接口是一种规范和标准,他们可以约束类的行为,是一些方法特征的集合,但是没有方法的实现. 接口可以看作一种特殊的"抽象类",但是采用与抽象类按群不同的语法来表示: 抽象类有利于代码的重用,接口有利于代码的扩展和维护: 接口的特性: 接口不

使用Java实现面向对象编程(12)

这里是对之前的总结: 1-4:封装:1.现实世界中抽象出类:a.发现一个物体---->类b.从物体上寻找它的属性--->属性c.从物体上寻找它的行为--->方法 2.new在java语言中 当想要调用类中的方法OR属性 需要实例化这个对象 3.构造函数a.public修饰 方法名和类名相同 没有返回b.系统默认提供无参的构造c.如果手动(强行)编写构造方法 系统提供的无参构造将消失d.用来执行类中的属性初始化的操作e.new 构造方法() 4.statica.作用在属性 方法 stati

使用Java实现面向对象编程——第六章 框架集合

1.集合框架包含的主要内容及彼此之间的关系: 图1:   集合框架:是为了表示和操作集合而统一规定的一种统一的标准体系结构.               包含三大块的内容:对外的接口.接口的是实现和对集合运算的算法: Java集合框架提供了一套性能优良.使用方便的接口和类,它们位于java.util包中:       ●接口:表示集合的抽象数据类型,在图1中用虚线框表示,下图绿色的:                    ●实现:集合框架中接口的具体实现,图1中一实线表示,粗实线表示常用的:上图

使用Java实现面向对象编程(4)

接口:1.修饰符采用interface2.接口中所有的方法都是抽象方法(不允许包含方法体) 方法不需要强制编写abstract3.接口中所有的变量都是常量 public static final 修饰 并不需要强制编写4.采取面向接口的编程(提倡) 接口 变量名 = new 接口实现()5.接口不允许被实例化 (不能被new)6.接口的实现类 必须重写接口中所有的方法7.接口不允许实现接口 接口可以继承接口8.抽象类可以实现接口 9.接口中不允许有构造方法 抽象类允许有构造方法