面向对象的一些题,让你快速了解基本写法

刚接触面向对象,对其非常不了解,接下老师用了一天时间出了一些题让我 们尽量快速进入到面向对象的学习中

事列:

<?php/** * Created by PhpStorm. * User: fu * Date: 2017/7/18 * Time: 16:39 *//* * 根据描述定义出对应的功能类、接口等:      银行柜台常规的功能有:存款、取款、转账、查询、修改密码等;     ATM机也具有类似的功能:存款、取款、转账、查询、修改密码等;     但是银行柜台可以人工操作服务。     另外不同的银行可以提供一些特殊的便民服务:         中国银行可以交水、电、气等费用;        建设银行可以交水、电费,同时还可以交上网费;        交通银行可以交水费,还可以交交通违章费用;        工商银行可以交电、气费,还可以交有线电视费;     另外现在网络也和发达,那么支付宝和微信都可以支持上面的特殊费用的提交。     那么请大家根据上面的描述来进行设计。 */

abstract class YinHang{

protected $yhMingChen;

public function __construct($yhMingChen)    {        $this->yhMingChen = $yhMingChen;    }

public function chaXun($chuHu){

}    public function cunKuan($chuHu){

}    public function quKuan($chuHu){

}    public function zhuanZhang($chuHu){

}    public function gaiMiMa($chuHu){

}

/**     * @return mixed     */    public function getYhMingChen()    {        return $this->yhMingChen;    }}interface IShui{    function jiaoShuiFei();}interface IDian{    function jiaoDianFei();}interface IQi{    function jiaoQiFei();}interface IShangWang{    function jiaoShangWangFei();}interface IWeiZhang{    function jiaoWeiZhangFei();}interface IDianShi{    function jiaoDianShiFei();}class ZhongGuoYinHang extends YinHang implements IShui,IDian,IQi {    function jiaoShuiFei()    {        // TODO: Implement jiaoShuiFei() method.    }    function jiaoDianFei()    {        // TODO: Implement jiaoDianFei() method.    }    function jiaoQiFei()    {        // TODO: Implement jiaoQiFei() method.    }}class JianSheYinHang extends YinHang implements IShui,IDian,IShangWang {    function jiaoDianFei()    {        // TODO: Implement jiaoDianFei() method.    }    function jiaoShuiFei()    {        // TODO: Implement jiaoShuiFei() method.    }    function jiaoShangWangFei()    {        // TODO: Implement jiaoShangWangFei() method.    }}class JiaoTongYinHang extends YinHang implements IShui,IWeiZhang{    function jiaoShuiFei()    {        // TODO: Implement jiaoShuiFei() method.    }    function jiaoWeiZhangFei()    {        // TODO: Implement jiaoWeiZhangFei() method.    }}class GongShangYinHang extends YinHang implements IDian,IQi,IDianShi{    function jiaoDianFei()    {        // TODO: Implement jiaoDianFei() method.    }    function jiaoQiFei()    {        // TODO: Implement jiaoQiFei() method.    }    function jiaoDianShiFei()    {        // TODO: Implement jiaoDianShiFei() method.    }}

class RenGongGuiTai{    protected $name;    protected $yinHang;    public function __construct($yinHang, $name){        $this->yinHang = $yinHang;        $this->name = $name;    }    public function desc(){        echo ‘当前您访问的是:‘.$this->yinHang->getYhMingChen().$this->name;    }    public function renGongFuWu(){

}}class ATM{    protected $name;    protected $yinHang;    public function __construct($yinHang, $name){        $this->yinHang = $yinHang;        $this->name = $name;    }}

abstract class TeShuZhiFu implements IDian,IQi,IDianShi,IShui,IWeiZhang,IShangWang{    protected $name;    public function __construct($name){        $this->name = $name;    }    public function desc(){        echo ‘当前您访问的是:‘.$this->name;    }    function jiaoDianFei()    {        echo "你好:需要交电费吗?";    }    function jiaoShuiFei()    {        // TODO: Implement jiaoShuiFei() method.    }    function jiaoShangWangFei()    {        // TODO: Implement jiaoShangWangFei() method.    }    function jiaoQiFei()    {        // TODO: Implement jiaoQiFei() method.    }    function jiaoDianShiFei()    {        // TODO: Implement jiaoDianShiFei() method.    }

function jiaoWeiZhangFei()    {        // TODO: Implement jiaoWeiZhangFei() method.    }}class ZhiFuBao extends TeShuZhiFu{

}class WeiXing extends TeShuZhiFu{

}

$zfb=new ZhiFuBao(‘支付宝‘);$zfb->desc();echo "<br>";$zfb->jiaoDianFei();

//$yh = new ZhongGuoYinHang(‘中国银行‘);//$yhgt = new RenGongGuiTai($yh, ‘人工柜台‘);//$yhgt->desc();
时间: 2024-12-14 04:51:46

面向对象的一些题,让你快速了解基本写法的相关文章

BNUOJ 34985 Elegant String 2014北京邀请赛E题 动态规划 矩阵快速幂

Elegant String Time Limit: 1000msMemory Limit: 65536KB 64-bit integer IO format: %lld      Java class name: Main We define a kind of strings as elegant string: among all the substrings of an elegant string, none of them is a permutation of "0, 1,-, k

HDU 5863 cjj&#39;s string game ( 16年多校10 G 题、矩阵快速幂优化线性递推DP )

题目链接 题意 : 有种不同的字符,每种字符有无限个,要求用这k种字符构造两个长度为n的字符串a和b,使得a串和b串的最长公共部分长度恰为m,问方案数 分析 : 直觉是DP 不过当时看到 n 很大.但是 m 很小的时候 发现此题DP并不合适.于是想可能是某种组合数学的问题可以直接公式算 看到题解的我.恍然大悟.对于这种数据.可以考虑一下矩阵快速幂优化的DP 首先要想到线性递推的 DP 式子 最直观的想法就是 dp[i][j] = 到第 i 个位置为止.前面最长匹配长度为 j 的方案数 但是如果仔

c++面向对象程序设计 课后题 答案 谭浩强 第四章

c++面向对象程序设计课后题答案 谭浩强 第四章 1: #include <iostream> using namespace std; class Complex {public: Complex(){real=0;imag=0;} Complex(double r,double i){real=r;imag=i;} double get_real(); double get_imag(); void display(); private: double real; double imag;

(中等) CF 576D Flights for Regular Customers (#319 Div1 D题),矩阵快速幂。

In the country there are exactly n cities numbered with positive integers from 1 to n. In each city there is an airport is located. Also, there is the only one airline, which makes m flights. Unfortunately, to use them, you need to be a regular custo

华东交通大学2018年ACM“双基”程序设计竞赛 C. 公式题 (2) (矩阵快速幂)

题目链接:公式题 (2) 比赛链接:华东交通大学2018年ACM"双基"程序设计竞赛 题目描述 令f(n)=2f(n-1)+3f(n-2)+n,f(1)=1,f(2)=2 令g(n)=g(n-1)+f(n)+n*n,g(1)=2 告诉你n,输出g(n)的结果,结果对1e9+7取模 输入描述: 多组输入,每行一个整数n(1<=n<=1e9),如果输入为0,停止程序. 输出描述: 在一行中输出对应g(n)的值,结果对1e9+7取模. 示例1 输入 1 5 9 456 0 输出

关于Java面向对象的分析题

分析程序看有没有问题,如果有,说出原因即可.-----------------------------------------------------------------------------1. abstract class Name { private String name; public abstract boolean isStupidName(String name) {} //有方法体,但方法体为空.会报错. } 错误. 抽象方法必须以分号结尾,且不带花括号. 在Java中,

江苏徐州邀请赛 I题 类矩阵快速幂

题意:即一个m个点的图,求走n步,所能获得的最大权值n(2e5),m(100)时间限制:2s,样例:10组思路1:dp dp[i][j]表示i步到达j所能获得的最大权值 for i=1:n for j=1:m for k=1:m dp[i][j]=max(dp[i][j],dp[i][k]+v[k][j]);复杂度为 n*m^2, 复杂度会爆的思路2:考虑下最短路中松弛的说法,我们定义为扩张for i=1:m for j=1:m for k=1:m f[i][j]=max(f[i][j],f[i

Bzoj2510 弱题(矩阵快速幂)

题面(权限题) 题解 一道概率\(dp\),可以设\(f[i][j]\)表示第\(i\)次操作后,标号为\(j\)的小球的期望个数,那么有: \[ \begin{aligned} &f[i][j]=(1-\frac 1m)f[i-1][j]+\frac1mf[i-1][j-1](1\leq j\leq n) \&f[i][0]=(1-\frac 1m)f[i-1][j]+\frac1mf[i-1][n] \end{aligned} \] 这样的话转移可以写成矩阵的形式(假设有\(4\)个小

面向对象c++判断题总结

1.      c++结构体(struct)的成员可以有数据成员和成员函数 正确,因为struct可以被视作一个只有public的class 所以可以有数据成员和成员函数 2.      c++类中的所有成员函数都有一个隐含的形式参数this指针. 错误,因为静态的成员函数没有this指针 3.      类的静态数组成员在主函数执行前创建,程序结束时被销毁. 正确 4.      类的友元函数可以访问该类对象的受保护(protected)以及私有(private)成员. 正确,友元函数跟成员函