Recommend me a good video player (and help with GVim!)

How can I replace these seamlessly?
Totem -> some kind of decent gstreamer video player (suggestions?)
Gedit -> GVim

I've found recently my "perfect" (so far) combination in video/audio running on GNOME. That is mplayer+gnome-mplayer+gmusicbrowser.
gnome-mplayer is a frontend for mplayer and I think is smooth and simple. gmusicbrowser uses mplayer too for playing any audio file. So, you don't need gStreamer nor xine-lib at all. It even sounds strange (not the audio I get).
Last edited by ArchSoarer (2010-02-18 23:57:17)

Similar Messages

  • Recommend a good reference book and helpful links to configure ACS 5.x

    Hi Experts,
    I am new to Cisco ACS, Can anyone recommend me a good reference book and helpful links which will help me to configure ACS 5.x
    Thanks In Advance
    Kiran Kumar CH

    Hi Klaus,
    I found the Cisco Press book "AAA Identity Management" to be a good reference when I was getting started with ACS 5.x.
    http://www.ciscopress.com/bookstore/product.asp?isbn=1587141442
    Good luck,
    Nate

  • Confirm on - Scratch-resistant glass, oleophobic coating,Adobe Flash HTML,Radio Stereo FM,Java MIDP emulator,Scratch-resistant glass back panel,Audio/video player and editor,TV Out,Document editor (Word, Excel, PowerPoint, PDF)

    Kindly confirm on the following features of Iphone 4s..and advice me accordingly.
    Confirm on - Scratch-resistant glass, oleophobic coating,Adobe Flash HTML,Radio Stereo FM,Java MIDP emulator,Scratch-resistant glass back panel,Audio/video player and editor,TV Out,Document editor (Word, Excel, PowerPoint, PDF)

    You can easily compare any Nokia devices using the web sites, here is a comparison of the N8 from the Nokia UK site:
    http://www.nokia.co.uk/gb-en/products/compare/?action=productcompareaction&site=64060&products=23301...
    And similar from Nokia Developer:
    http://www.developer.nokia.com/Devices/Device_specifications/Comparison.xhtml?dev=Lumia_800,N8-00
    Some information may be incomplete at present, since some device details were kept secret until the final moment of the launch so the pages have been prepared withoug all of the data.
    Nokia Maps is available for Windows Phone at launch.
    Multi-Touch(TM) is the registered trademark of another company, however Windows Phone does feature the common touch features such as swiping, pinch-zooming and so on.
    If this or any post answers your question, please remember to help others by pressing the 'Accept as solution' button.

  • I need advise and help with this problem . First , I have been with Mac for many years ( 14 to be exact ) I do have some knowledge and understanding of Apple product . At the present time I'm having lots of problems with the router so I was looking in to

    I need advise and help with this problem .
    First , I have been with Mac for many years ( 14 to be exact ) I do have some knowledge and understanding of Apple product .
    At the present time I'm having lots of problems with the router so I was looking in to some info , and come across one web site regarding : port forwarding , IP addresses .
    In my frustration , amongst lots of open web pages tutorials and other useless information , I come across innocent looking link and software to installed called Genieo , which suppose to help with any router .
    Software ask for permission to install , and about 30 % in , my instinct was telling me , there is something not right . I stop installation . Delete everything , look for any
    trace in Spotlight , Library . Nothing could be find .
    Now , every time I open Safari , Firefox or Chrome , it will open in my home page , but when I start looking for something in steed of Google page , there is
    ''search.genieo.com'' page acting like a Google . I try again to get raid of this but I can not find solution .
    With more research , again using genieo.com search eng. there is lots of articles and warnings . From that I learn do not use uninstall software , because doing this will install more things where it come from.
    I do have AppleCare support but its to late to phone them , so maybe there some people with knowledge , how to get this of my computer
    Any help is welcome , English is my learned language , you may notice this , so I'm not that quick with the respond

    Genieo definitely doesn't help with your router. It's just adware, and has no benefit to you at all. They scammed you so that they could display their ads on your computer.
    To remove it, see:
    http://www.thesafemac.com/arg-genieo/
    Do not use the Genieo uninstaller!

  • ME293 is a good for programming and work with coreldraw and rhino ?

    ME293 is a good for programming and work with coreldraw and rhino ?

    No there is not. You are correct that Verizon will unlock it for international use, but they will not unlock it for domestic use. That is the way the US carriers work. Fortunately, the LTE enabled phones for Verizon are different. They are unlocked at the start on the GSM side, this was a requirement from the FCC for the allocation of additional LTE frequencies for Verizon. Not sure how long this will last, but your only choice is to use Verizon or to obtain a different phone. That 4S will not work with AT&T.

  • Am looking for a good video player for IOS 4.1

    Hello all. Have an IPhone 3GS for which I am looking for a good (free) video player? Any recommendations?

    There certainly is... a video player has been included with every version of iOS.
    In iOS4 all media is accessed via the iPod app.  iOS5 and later seperates audio and video into two apps, "Music" and "Video".

  • Flash Video Player Need Help

    Hello everyone I am hoping someone here can help me.  I am going to school and I have an action scripting class.  For my final project we have to make a flash video player with a custom skin to upload to our websites. We did something similar to this with our first project which we made a player where the movies where embedded in the file itself but this is supposed to be a youtube like flash player where we can call in the files from another source.   
      We kind of got pressed for time and were not able to go into detail with this project so the teacher gave us the code and I put it in exactly how it should be but im pretty sure i have something misplaced or I am missing a step. I get 8 different errors when I go to test the movie. and nothing works.  Can someone please tell me what I am doing wrong or can you point me in the direction of a tutorial on this  as I have been searching for tutorials on this with no luck. 
    Here is my Action Script 3.0 CODE:
    import fl.video.FLVPlayback;
    import fl.controls.List;
    var vid:FLVPlayback = new FLVPlayback();
    vid.source= "fashion.flv";
    addChild(vid);
    vid.skin="SkinOverPlayStopSeekMuteVol.swf";
    vid.x=100;
    vid.y=300;
    vid.skinAutoHide="true";
    vid.width=500;
    vid.height=280;
    var vidList:List = new List();
    vidList.x= vid.x+10;
    vidList.y= 200;
    vidList.width=200;
    vidList.height=100;
    vidList.addItem({label:"Bathroom Behavior",data: "bathroom.flv"});
    vidList.addItem({label:"Chase Scene",data: "chase.flv"});
    vidList.addItem({label:"VMCAD Fashion Design Commercial",data: "fashion.flv"});
    addChild(vidList);
    vidList.addEventListener(Event.CHANGE,playVid);
    function playVid(e:Event):void{     
    vid.source=e.target.selectedItem.data;
    Here is a screenshot of the errors I am receiving.
    Please help me 
    thanks
    Message was edited by: BTwardy

    I don't know if what you posted is all that is in that as file, but you need to declare a package, then call the import statements, then declare the class name.  Like this:
    package {
         import flash.display.Sprite;
         import flash.events.Event;
         import fl.video.FLVPlayback;
         import fl.controls.List;
         public class Main extends Sprite {
              public function Main() {
                   var vid:FLVPlayback = new FLVPlayback();
                   vid.source= "fashion.flv";
                   addChild(vid);
                   vid.skin="SkinOverPlayStopSeekMuteVol.swf";
                   vid.x=100;
                   vid.y=300;
                   vid.skinAutoHide="true";
                   vid.width=500;
                   vid.height=280;
                   var vidList:List = new List();
                   vidList.x= vid.x+10;
                   vidList.y= 200;
                   vidList.width=200;
                   vidList.height=100;
                   vidList.addItem({label:"Bathroom Behavior",data: "bathroom.flv"});
                   vidList.addItem({label:"Chase Scene",data: "chase.flv"});
                   vidList.addItem({label:"VMCAD Fashion Design Commercial",data: "fashion.flv"});
                   addChild(vidList);
                   vidList.addEventListener(Event.CHANGE,playVid);
              function playVid(e:Event):void{     
                   vid.source=e.target.selectedItem.data;
    Then click on your stage in Flash, then open the properties window, and fill the Class text field with:   Main
    Make sure the as file is saved in the same folder as the flv.

  • Issues with basic video player. Help?

    Hi all, I've been working on making an extremely basic video player for my java class at school and everytime I run it I'm getting an error. I assume it's because of the video format. I've tried avi and mpg to no avail.
    The avi error is...
    Unable to handle format: DIVX, 320x240, FrameRate=30.0, Length=230400 44 extra bytes
      Unable to handle format: mpeglayer3, 22050.0 Hz, 0-bit, Mono, Unsigned, 8000.0 frame rate, FrameSize=4608 bits
    Failed to realize: com.sun.media.PlaybackEngine@c5495e
    Error: Unable to realize com.sun.media.PlaybackEngine@c5495e
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerExceptionand the mpg error is...
    run:
    Exception in thread "JMF thread: com.sun.media.PlaybackEngine@c5495e[ com.sun.media.PlaybackEngine@c5495e ] ( configureThread)" java.lang.NegativeArraySizeException
            at com.ibm.media.parser.video.MpegParser.parsePacket(MpegParser.java:1513)
            at com.ibm.media.parser.video.MpegParser.mpegSystemParseBitstream(MpegParser.java:1226)
            at com.ibm.media.parser.video.MpegParser.initTrackSystemStream(MpegParser.java:673)
            at com.ibm.media.parser.video.MpegParser.getTracks(MpegParser.java:333)
            at com.sun.media.BasicSourceModule.doRealize(BasicSourceModule.java:180)
            at com.sun.media.PlaybackEngine.doConfigure1(PlaybackEngine.java:229)
            at com.sun.media.PlaybackEngine.doConfigure(PlaybackEngine.java:193)
            at com.sun.media.ConfigureWorkThread.process(BasicController.java:1370)
            at com.sun.media.StateTransitionWorkThread.run(BasicController.java:1339)The source code is... (excluding the main class)
    import javax.swing.*;
    import java.awt.*;
    import javax.media.*;
    import java.awt.event.*;
    import java.net.*;
    public class MediaPanel
        JFrame frame = new JFrame();
        Player player = null;
        public MediaPanel()
            try {
                URL url = new URL("file",null,"H:\\test.mpg");
                //URL url = new URL("file",null,"H:\\test.avi");
                player = Manager.createRealizedPlayer(url);
            catch (Exception e) {};
            Component control = player.getVisualComponent();
            frame.getContentPane().add( control, BorderLayout.CENTER);
            frame.pack();
            frame.setVisible(true);
            player.start();
    }This is the first time I've made anything that plays video and I took the basis for my code from this thread http://forum.java.sun.com/thread.jspa?threadID=5269983&tstart=30 so for all I know it could be a problem with the code and not the video file.
    Also, the page of supported formats would probably answer my question ( http://java.sun.com/products/java-media/jmf/2.1.1/formats.html ) except I don't know much about video formats and that table doesn't make much sense to me. Any help or a point in the right direction is awesome. Thanks!

    I have the same problem. I am new to JMF and I can not get an avi or a .mov to play. In fact, I can't find any movie file that actually does work. I am trying VERY simple code just to get this to work. Baby steps:
    javax.media.Player player = javax.media.Manager.createPlayer(ml);
              player.realize();
              java.awt.Component mediaViewer = player.getVisualComponent();ml is a MediaLocator from an url.
    I get the error:
    Unable to handle format: RGB, 200x200, FrameRate=30.0, Length=0, 8-bit, Masks=-1:-1:-1, LineStride=200, Flipped
    Failed to realize: com.sun.media.PlaybackEngine@d3c65d
    Error: Unable to realize com.sun.media.PlaybackEngine@d3c65d

  • Vlc video player and wifi switcher on my n900. Gre...

    I have just installed Vlc video player on my n900 that seems to play most things that I throw at it but it has the added advantage of expanding the video to fullscreen. This cuts off a little of the outside edge but well worth it for fullscreen viewing. Good to have as another media player on the phone.
    Other great download is "wifi switcher" app that turns wifi on and off (not otherwise possible on n900) saves a lot of battery drainage, really noticeable.
    Someone else might find these downloads useful.

    As far as the VLC app . I downloaded the app from a link on the gerrymoth site and he gives instructions how to do this.
    He also gives instructions how to create the" traffic cone"  icon for VLC so that it can be accessed through the nokia apps screen. Otherwise it only seems possible to be able to start it it via the n900 root command. You need to be careful to type the commands he gives exactly in the root  with all relevant gaps etc. He has three lines of commands and you have to press enter after each line , when done icon appears after phone is rebooted. Beforehand I downloaded xtreme app that takes you to the root of the n900.
    When VLC is opened access options at top (blue triangle) ,open film from whereever it is stored and choose video preferences . Mine seems, by default to be on "autoscale video" that I uncheck and choose 2:1 double option with nothing else checked. When the film is playing all controls and options can be accessed by double tapping screen and to make them disappear double tap again.
    I have kmplayer but unless I am missing something it does not seem to have a zoom function, if so can you tell me where.

  • N8 Video Player and Photo Viewer not working prop...

    Hi I just got a N8 a few months ago and its been going great until a month ago. 
    My video player is not displaying any the videos that I had on the phone or any of the videos I try putting on after. I then tried the photo viewer (it displays video as well for some reason) but that didn't have any of the videos and only some of my photos are being displayed.
    I previously had the problem with the music player where it would be stuck on  the music updating screen (not frozen) but I solved that by looking through the net and finding that you delete a certain file and it fixed that.
    Thanks  

    Haven't figured it out yet, but will post if I find a solution.
    The problem is, I'm trying to find a solution to a whole host of other problems on my N97, e.g. The problems I'm having with GPS (Maps 2 and 3 are both currently unusable), the problems I'm having getting my widgets, email etc to detect which connection I need using etc, the problems I'm having with reception, the problems I'm having with my ringtone etc. So this photo viewer problem is just another issue to add to the list.
    As for the Facebook App, if I take a picture using the camera link within the application, it won't let me upload anyway, so I've stopped using it. I just use the standard Facebook Mobile site as the Nokia Facebook App is so slow, it's borders on useless.

  • What is a good video player that is not quicktime?

    I tried to upload and watch videos from my blackberry but quicktime wont play them is there another player that i can download??

    I got the VLC media player and it works fine with me.
    http://www.videolan.org/vlc/index.html
    Here's the link and then all you have to do is press download.
    Hope it helps

  • A good video player

    I have the OSX quicktime, VLC player and Windows Media player and none of them can play several of my AVI files. Are there any other video players out there for Apple or must I install Virtual PC? Thanks

    Do those files work on a Windows machine? In the last few years I've used it, VLC has played almost every imaginable file I've tried. It maybe be that those files are corrupt.

  • Google Video Player No Audio With Audigy4 or Audi

    After downloading (free) Google Video's?to my hard dri've I have watched them many times now and listened to them problem free with on board audio. However; I have now installed Audigy4 and Audigy2 in seperate computers and?both now have NO audio while attempting to use the Google Video Player. Yes, the volume is turned all the way up on the Google player and Yes? I have checked all audio levels on the Surround Mixer and nothing is MUTED.Please, can someone help as I use the Google Video Player daily. One last note is that I had a brief message only one time stating that the audio stream was NOT recognized!!! All my other audio needs, MP3, Wave, DVD Player, CDA are all working (audio) just fine. Thanking you?in Advance.

    Thank You taranaki and a very Special Thank You to The Google Team?I contacted Creative Labs Tech Support and they promptly stated, "We do NOT support the Google Video Player's audio stream (GVI) and offer NO assistance accordingly"...WoW, and NOT cool at all. Plan #2?I contacted Google and within one day, yes one day, Google got back to me and said they would be glad to help resolve this issue and had The Google Team get an Audigy4 sound card. I was again contacted by The Google Team with the fix (TURN OFF EVERTYHING IN EAX). Problem solved and no help from Creative Labs Tech Support either!!! I was very disappointed as I am PRO Creative Labs and have (7) of their sound cards. Lastly, Thank You again taranaki , Creative Forums, and The Google Team for all your help.
    ????????????????????????- Austin -

  • Checking Account and help with code ?

    Hi all..my computer hung up on me, so I'm not sure if my last post went through. First of all thank you all for helping me out the other day with my question on the Bank Account. It continues :)
    I'm trying to work on each class one by one..when I test my Checking Account, it isn't printing out the correct balance. The string method to print this is coming from the Withdrawal class...so I know it has to be somewhere in there but I can't seem to figure out why it isn't totalling the balance...or how to get it too.
    Then when I test my MyBank class, it hangs up on line 63..which I could swear I have written correctly. Again I am getting a NullPointerException and I honestly think I have the line of code written right, but I'm guessing I dont.
    Any help would be appreciated.
    public abstract class BankAccount {
        public static final String bankName = "BrianBank";
        protected String custName;
        protected String pin;
        protected Transaction[] history;
        private double balance;
        private double amt, amount;
        private double bal, initBal;
        private int transactions;
        private final int MAX_HISTORY = 100;
        private int acct;
        protected BankAccount(String cname, String cpin, double initBal) {
         custName = cname;
         pin = cpin;
         balance = initBal;
         history = new Transaction[MAX_HISTORY];
         transactions =0;
        public double getBalance() {
         return balance;
        public void withdraw(double amt) {
         history [transactions] = new Withdrawal (bal, amt);
       balance = bal;
         amount = amt;
         balance -= amt;
       transactions = transactions + 1;     
        public void deposit(double amt) {     
         history [transactions] = new Deposit (bal, amt);
         balance = bal;
         amount = amt;
         balance += amt;
         transactions = transactions +1;
        // abstract method to return account number
        public abstract int getAcctNum();
        // abstract method to return a summary of transactions as a string
        public abstract String getStatement();
    public class CheckingAccount extends BankAccount implements IncursFee
          private int transactions;
          private double balance, initBal, amt;
          private static final int NOFEE_WITHDRAWALS = 10;
          private static final double TRANSACTION_FEE = 5.00;
          public static final String bankName = "iBank";
          public static final int STARTING_ACCOUNT_NUMBER = 10000;
          private int checkingAccountNumber = STARTING_ACCOUNT_NUMBER;
          private static int accountNumberCounter = STARTING_ACCOUNT_NUMBER;
          private String custName;
          private String pin;
          public CheckingAccount (String cname, String cpin, double initBal)
             super (cname, cpin, initBal);
              custName = cname;
              pin = cpin;
             balance = initBal;
             accountNumberCounter++; 
             checkingAccountNumber = accountNumberCounter;
          //initialize a count of transactions
             transactions = 0;          
           public double getBalance()
             return balance;
           public void withdraw(double amt)
            super.withdraw (amt);
             transactions ++;
           public void deposit(double amt)
           super.deposit (amt);
             transactions ++;
           public int getAcctNum ()
             return checkingAccountNumber;     
           public String getStatement ()
             int i = 0;
             String output = "";
             while ( i < history.length && history[i] != null )
                output += history.toString () + "\n";
    i++;
    return output;     
    public void deductFee(double fee)
    if (transactions > NOFEE_WITHDRAWALS)
    {  fee = TRANSACTION_FEE *(transactions - NOFEE_WITHDRAWALS);
    super.withdraw(fee);
    balance -=fee;
    transactions = 0;
    public interface IncursFee {
    public abstract void deductFee(double fee);
    public abstract class Transaction {
    protected double initBal;
    protected double tranAmt;
    // constructor
    protected Transaction(double bal, double amt) {
         initBal = bal;
         tranAmt = amt;
    abstract public String toString();
    public class Withdrawal extends Transaction
         private double initBal;
         private double amount;
         private static NumberFormat fmt = NumberFormat.getCurrencyInstance();
         public Withdrawal (double bal, double amt)
              super (bal, amt);
              initBal = bal;
              amount = amt;
         public String toString ()
         return "Balance : " + fmt.format(initBal) + "\n" + "Withdrawal : " + fmt.format(amount);
    import java.text.NumberFormat;
    public class Deposit extends Transaction
         private double initbal, balance;
         private double amount;
         private static NumberFormat fmt = NumberFormat.getCurrencyInstance();
         public Deposit (double bal, double amt)
         super (bal, amt);
         initbal = bal;
         amount = amt;
         public String toString ()
         return "Balance : " + fmt.format(initbal) + "\n" + "Deposit : " + fmt.format(amount);
    public class TestCheckingAcct {
    public static void main(String[] args) {
         BankAccount b1 = new CheckingAccount("Harry", "1234", 500.0);
         System.out.println (b1.getBalance ());
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.deposit(50);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.deposit(10);
         b1.withdraw(1);
         System.out.println(b1.getStatement());
    // This interface specifies the functionality requirements of a bank
    public interface Bank {
    public abstract int openNewAccount(String customerName, String customerPIN, String accType, double initDepAmount);
    public abstract void processWithdrawal(int accNum, String pin, double amount);
    // executes a deposit on the specified acct by the amount
    public abstract void processDeposit(int accNum, String pin, double amount);
    // returns the balance of acct
    public abstract double processBalanceInquiry(int accNum, String pin);
    // returns summary of transactions
    public abstract String processStatementInquiry(int accNum, String pin);
    import java.util.ArrayList;
    public class MyBank implements Bank
    private ArrayList<BankAccount> savAccounts = new ArrayList<BankAccount>(); //dynamically grows
    private ArrayList<BankAccount> chkAccounts = new ArrayList<BankAccount>(); //dynamically grows
    private SavingsAccount sav;
    private CheckingAccount chk;
    private int accNum;
    private String customerName, customerPIN, accType, pin;
    private double initDepAmount, amount, balance;
    public int openNewAccount(String customerName, String customerPIN, String accType, double initDepAmount)
    this.customerName = customerName;
    this.customerPIN = customerPIN;
    this.accType = accType;
    this.initDepAmount = initDepAmount;
    if ( accType.equals("Savings"))
    BankAccount savAcct = new SavingsAccount(customerName, customerPIN, initDepAmount);
    try
    savAccounts.add(savAcct);
    catch (ArrayIndexOutOfBoundsException savAccounts)
    return savAcct.getAcctNum();
    else
    CheckingAccount chkAcct = new CheckingAccount(customerName, customerPIN, initDepAmount);
         try
    chkAccounts.add(chkAcct);
    catch (ArrayIndexOutOfBoundsException chkAccounts)
    return chkAcct.getAcctNum();
    public void processWithdrawal (int accNum, String pin, double amount)
         this.accNum = accNum;
         this.pin = pin;
         this.amount = amount;
    if (accNum >10000 && accNum < 20000)
         chk.withdraw (amount);
    if (accNum >50000 && accNum <60000)
         sav.withdraw (amount);
    public void processDeposit (int accNum, String pin, double amount)
         this.accNum = accNum;
         this.pin = pin;
         this.amount = amount;
    if (accNum >10000 && accNum < 20000)
         chk.deposit (amount);
    if (accNum >50000 && accNum <60000)
         sav.deposit (amount);
    public double processBalanceInquiry (int accNum, String pin)
         this.accNum = accNum;
         this.pin = pin;
         this.balance = 0;
    if (accNum >10000 && accNum <20000)
         balance = chk.getBalance ();
    if (accNum >50000 && accNum <60000)
         balance = sav.getBalance ();
    return balance;
    public String processStatementInquiry(int accNum, String pin)
         this.accNum = accNum;
         this.pin = pin;
         this.statement = "";
    if (accNum >10000 && accNum <20000)
    statement = chk.getStatement ();
    if (accNum >50000 && accNum <60000)
    statement= sav.getStatement ();
         return statement;

    Here's some quick code review:
    public abstract class BankAccount {
    public static final String bankName =
    me = "BrianBank";
    protected String custName;
    protected String pin;
    protected Transaction[] history;
    private double balance;
    private double amt, amount;
    private double bal, initBal;
    private int transactions;// make MAX_HISTORY private static final, too.
    private final int MAX_HISTORY = 100;
    private int acct;
    protected BankAccount(String cname, String cpin,
    pin, double initBal) {
         custName = cname;
         pin = cpin;
         balance = initBal;
         history = new Transaction[MAX_HISTORY];
         transactions =0;
    public double getBalance() {
         return balance;
    public void withdraw(double amt) {
         history [transactions] = new Withdrawal (bal, amt);
    balance = bal;
         amount = amt;
         balance -= amt;// ++transactions above would be elegant.
    transactions = transactions + 1;     
    public void deposit(double amt) {     
         history [transactions] = new Deposit (bal, amt);
         balance = bal;
         amount = amt;
         balance += amt;
         transactions = transactions +1;
    // abstract method to return account number// why abstract?
    public abstract int getAcctNum();
    // abstract method to return a summary of
    y of transactions as a string// why abstract?
    public abstract String getStatement();
    public class CheckingAccount extends BankAccount
    implements IncursFee
    private int transactions;
    private double balance, initBal, amt;
    private static final int NOFEE_WITHDRAWALS =
    WALS = 10;
    private static final double TRANSACTION_FEE =
    _FEE = 5.00;
    public static final String bankName = "iBank";
    public static final int STARTING_ACCOUNT_NUMBER
    NUMBER = 10000;
    private int checkingAccountNumber =
    mber = STARTING_ACCOUNT_NUMBER;
    private static int accountNumberCounter =
    nter = STARTING_ACCOUNT_NUMBER;// BankAccount has a custName attribute; why does CheckingAccount need
    // one if it extends BankAccount?
    private String custName;
    private String pin;
    public CheckingAccount (String cname, String
    String cpin, double initBal)
    super (cname, cpin, initBal);
    custName = cname;
    pin = cpin;
    balance = initBal;
    accountNumberCounter++;
    checkingAccountNumber =
    tNumber = accountNumberCounter;
    //initialize a count of transactions
    transactions = 0;          
    // same as BankAccount - why rewrite it?
    public double getBalance()
    return balance;
    // same as BankAccount - why rewrite it?
    public void withdraw(double amt)
    super.withdraw (amt);
    transactions ++;
    // same as BankAccount - why rewrite it?
    public void deposit(double amt)
    super.deposit (amt);
    transactions ++;
              // same as BankAccount - why rewrite it?
    public int getAcctNum ()
    return checkingAccountNumber;     
    public String getStatement ()
    int i = 0;
    String output = "";
    while ( i < history.length && history[i] !=
    ory[i] != null )
    output += history.toString () + "\n";
    i++;
    return output;     
    public void deductFee(double fee)
    if (transactions > NOFEE_WITHDRAWALS)
    {  fee = TRANSACTION_FEE *(transactions -
    ansactions - NOFEE_WITHDRAWALS);
    super.withdraw(fee);
    balance -=fee;
    transactions = 0;
    public interface IncursFee {
    public abstract void deductFee(double fee);
    public abstract class Transaction {
    protected double initBal;
    protected double tranAmt;
    // constructor
    // why protected? make it public.
    protected Transaction(double bal, double amt) {
         initBal = bal;
         tranAmt = amt;
    abstract public String toString();
    public class Withdrawal extends Transaction
         private double initBal;
         private double amount;
    private static NumberFormat fmt =
    = NumberFormat.getCurrencyInstance();
         public Withdrawal (double bal, double amt)
              super (bal, amt);
              initBal = bal;
              amount = amt;
         public String toString ()
    return "Balance : " + fmt.format(initBal) + "\n" +
    + "Withdrawal : " + fmt.format(amount);
    import java.text.NumberFormat;
    public class Deposit extends Transaction
         private double initbal, balance;
         private double amount;
    private static NumberFormat fmt =
    = NumberFormat.getCurrencyInstance();
         public Deposit (double bal, double amt)
         super (bal, amt);
         initbal = bal;
         amount = amt;
         public String toString ()
    return "Balance : " + fmt.format(initbal) + "\n" +
    + "Deposit : " + fmt.format(amount);
    public class TestCheckingAcct {
    public static void main(String[] args) {
    BankAccount b1 = new CheckingAccount("Harry",
    , "1234", 500.0);
         System.out.println (b1.getBalance ());
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.deposit(50);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.withdraw(1);
         b1.deposit(10);
         b1.withdraw(1);
         System.out.println(b1.getStatement());
    // This interface specifies the functionality
    requirements of a bank
    public interface Bank {
    public abstract int openNewAccount(String
    String customerName, String customerPIN, String
    accType, double initDepAmount);
    public abstract void processWithdrawal(int
    (int accNum, String pin, double amount);
    // executes a deposit on the specified acct by
    t by the amount
    public abstract void processDeposit(int accNum,
    Num, String pin, double amount);
    // returns the balance of acct
    public abstract double processBalanceInquiry(int
    (int accNum, String pin);
    // returns summary of transactions
    public abstract String
    ring processStatementInquiry(int accNum, String
    pin);
    import java.util.ArrayList;
    public class MyBank implements Bank
    private ArrayList<BankAccount> savAccounts =
    unts = new ArrayList<BankAccount>(); //dynamically
    grows
    private ArrayList<BankAccount> chkAccounts =
    unts = new ArrayList<BankAccount>(); //dynamically
    grows
    private SavingsAccount sav;
    private CheckingAccount chk;
    private int accNum;
    private String customerName, customerPIN,
    erPIN, accType, pin;
    private double initDepAmount, amount, balance;
    public int openNewAccount(String customerName,
    erName, String customerPIN, String accType, double
    initDepAmount)
    this.customerName = customerName;
    this.customerPIN = customerPIN;
    this.accType = accType;
    this.initDepAmount = initDepAmount;
    if ( accType.equals("Savings"))
    BankAccount savAcct = new
    vAcct = new SavingsAccount(customerName, customerPIN,
    initDepAmount);
    try
    savAccounts.add(savAcct);
    catch (ArrayIndexOutOfBoundsException
    Exception savAccounts)
    return savAcct.getAcctNum();
    else
    CheckingAccount chkAcct = new
    hkAcct = new CheckingAccount(customerName,
    customerPIN, initDepAmount);
         try
    chkAccounts.add(chkAcct);
    catch (ArrayIndexOutOfBoundsException
    Exception chkAccounts)
    return chkAcct.getAcctNum();
    public void processWithdrawal (int accNum,
    accNum, String pin, double amount)
         this.accNum = accNum;
         this.pin = pin;
         this.amount = amount;
    if (accNum >10000 && accNum < 20000)
         chk.withdraw (amount);
    if (accNum >50000 && accNum <60000)
         sav.withdraw (amount);
    public void processDeposit (int accNum, String
    String pin, double amount)
         this.accNum = accNum;
         this.pin = pin;
         this.amount = amount;
    if (accNum >10000 && accNum < 20000)
         chk.deposit (amount);
    if (accNum >50000 && accNum <60000)
         sav.deposit (amount);
    public double processBalanceInquiry (int accNum,
    String pin)
         this.accNum = accNum;
         this.pin = pin;
         this.balance = 0;
    if (accNum >10000 && accNum <20000)
         balance = chk.getBalance ();
    if (accNum >50000 && accNum <60000)
         balance = sav.getBalance ();
    return balance;
    public String processStatementInquiry(int accNum,
    m, String pin)
         this.accNum = accNum;
         this.pin = pin;
         this.statement = "";
    if (accNum >10000 && accNum <20000)
    statement = chk.getStatement ();
    if (accNum >50000 && accNum <60000)
    statement= sav.getStatement ();
         return statement;
    Very bad style with those brace placements. Pick a style and stick with it. Consistency is the key.
    Your code isn't very readable.
    You don't have a SavingsAccount here anywhere, even though your MyBank uses one.
    You use JDK 1.5 generics yet you've got ArrayList as the static type on those declarations. Better to use the interface type List as the compile time type on the LHS.
    You have a lot of compile time problems, and some incomprehensible stuff, but I was able to change it enough to my TestCheckingAcct run to completion. No NPE exceptions.
    I'm not sure I agree with your design.
    No SavingsAccount. The accounts I have ALL incur fees - no need for a special interface there. Savings accounts are usually interest bearing. That's the way they behave differently from checking accounts. Where do you have that?
    You rewrite too much code. If you put behavior in the abstract BankingAccount class (a good idea), the whole idea is that concrete classes that extend BankingAccount don't need to overload any methods whose default behavior is correct for them.
    I don't know that I'd have separate Deposit and Withdrawal to implement Transaction. I'd make Transaction concrete and have starting balance, ending balance, and a transaction type String (e.g., "DEPOSIT", "WITHDRAWAL")
    It'd be good to see some thought put into exception handling. I don't see an OverdrawnException anywhere. Seems appropriate.
    No transfer methods from one account to another. I often do that with my bank.
    That's enough to get started.

  • I am trying to reinstall my Quicktime 7 Pro  after cleaning out my MacBook OSX 10.5.8 following a hacking. I have Quicktime player and  reregistered with the registration code for Quicktime  7 pro and it seems to be successfully registered but not in Appl

    Hello everybody. I am trying to reinstall my Quicktime 7 Pro after having my MacBook OSX 10.5.8 cleaned out following a hacking. I have Quicktime player and I reregistered with the purchased registration code for Quicktime 7 pro. It seems to be successfully registered with "Quicktime 7 Pro" appearing under the inserted registration code but it is not showing in Applications folder and I do not know how to access it or what to do. Thanks for reading this. I hope you can help me. Aidan from Dublin, Ireland.

    Inapplicable advice removed; misread the OS version.

Maybe you are looking for

  • Remittance advices

    Hello Friends, We have got one requirement. We need to send remittance advices through different output medium based on the vendor(Print, Fax, E-mail, EDI etc). How can we achieve this? Do we need to maintain any output condition records for these? I

  • Lock problem using Innodb MySQL and JNDI

    I have written an web application that uses tomcat 5, MySQL, JSP, JDBC, JNDI. My problem is that if an application running in the browser sets a lock on a data item. Then all applications running in the browser on the same pc holds the lock. I know t

  • Upgrading from evaluation to evaluation

    For a lab I am to upgrade a windows 2008 r2 evaluation to a windows 2012 r2 evaluation in a VM. The instructor insists that it can be done and that someone from a previous class has already done it. The system meets all requirements. How can it be do

  • Jelly Bean (4.1.1) update stops Wifi 802.1x

    Since getting the upgrade on my RAZR MAXX HD, I can no longer connect to wifi that requires 802.1x authentication (EAP/TLS/MSCHAPV2). Anybody have any solutions?

  • Smarform for Payment Notice/Account statement

    Hi , Please let me know if there is any Smartform & print program of Smartform available for Payment notice (Tcode - OB78 and OB96). If you have developed any smartform/Print program then please let  me know. Thank you in advance. Regards, Umesh Sawa